Anti-Antidote Ответов: 1

Извлечение данных из ifstream непосредственно в параметр


Есть ли способ извлечь данные из ifstream непосредственно в параметр? Я покажу, что я имею в виду:

// Normal method
ifstream yeet("yeet.txt");
string kek;
yeet >> kek;
print(kek);

// What I am trying to do, to some effect
ifstream yote("yote.txt");
print(yote.extract<string>());


Встроено ли что-нибудь подобное в файловые потоки (или потоки вообще)?

Спасибо!

Что я уже пробовал:

Пока что я использую обычный метод, но он кажется очень грязным.

CPallini

Почему вы находите его "грязным"?
Во всяком случае, вы можете написать функцию для этого, если хотите.

Richard MacCutchan

Нет, это не беспорядок, это вполне логично. Помнить, ifstream это в основном просто класс, так что вы можете улучшить его сами, если хотите получить больше специализаций.

1 Ответов

Рейтинг:
2

Stefan_Lang

Если вы намеревались скопировать файл, возможно, вам следует использовать std::streambuf вместо. Здесь есть хороший пример кода: streambuf::sgetn - ссылка на C++ [^]