Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
007imran007
1 / 1 / 0
Регистрация: 08.07.2012
Сообщений: 83
#1

Как правильно передать объект fstream в функцию - C++

05.09.2014, 14:28. Просмотров 774. Ответов 3
Метки нет (Все метки)

При использовании следующего подхода возникают вопросы:
C++
1
int myFunc(fstream& data);
1. Если я открою поток из функции, можно ли его закрыть из тела программы?
2. Можно ли поочередно(после закрытия одного) открывать потоки ввода/вывода из одного и того же объекта?
3. Если при открытии потока я не укажу флаги ios::in/ios::out, но использую в ходе один из видов побитового сдвига(aka <<, >>), сможет ли компилятор понять, что именно я пытался сделать, например:
C++
1
2
3
4
5
int num;
fstream data;
data.open("text.txt");
data >> num;
data.close();
4. При открытии потока в теле программы и указании флага ios::in/ios::out, а также дальнейшей передачи объекта в функцию - будет ли она знать с каким флагом был открыт процесс, если нет - то как?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.09.2014, 14:28     Как правильно передать объект fstream в функцию
Посмотрите здесь:

C++ Как правильно передать уникальный аргумент в функцию
C++ Как правильно передать в функцию указатель на двумерный массив?
C++ Нюансы работы с массивами: как правильно передать массив в функцию в качестве аргумента?
C++ Передать объект fstream функции
C++ Не могу понять, как правильно передать указатель на объект в файл
Как правильно передать динамический массив в функцию, увеличивающую его размер, чтобы изменения сохранились C++
Как передать объект "Стек" в функцию? C++
C++ Как передать объект в функцию
C++ Как правильно передать массив в функцию?
Недопустимый неполный тип , или как передать в функцию указатель на объект класса , или просто объект C++
Как правильно передать массив объектов пользовательского типа в функцию? C++
Как правильно передать объект в функцию при использовании многопоточности C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
FiLF
53 / 53 / 15
Регистрация: 05.09.2013
Сообщений: 1,210
05.09.2014, 14:31     Как правильно передать объект fstream в функцию #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Да. А почему бы тестовый пример не написать и не проверить всё это?
007imran007
1 / 1 / 0
Регистрация: 08.07.2012
Сообщений: 83
05.09.2014, 15:50  [ТС]     Как правильно передать объект fstream в функцию #3
Цитата Сообщение от FiLF Посмотреть сообщение
Да. А почему бы тестовый пример не написать и не проверить всё это?
Действительно, все потвердилось. Тестовый пример не начал создавать, т.к. уже итак писал тест на тест для программы) в итоге решил его таки создать и проверить - так намного интересней.
alsav22
5410 / 4806 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
05.09.2014, 16:11     Как правильно передать объект fstream в функцию #4
Цитата Сообщение от 007imran007 Посмотреть сообщение
Если при открытии потока я не укажу флаги ios::in/ios::out
При открытии потока присутствуют флаги выставленные по умолчанию. Для ifstream - ios::in, для ofstream - ios::out, для fstream - ios::in | ois::out.
Yandex
Объявления
05.09.2014, 16:11     Как правильно передать объект fstream в функцию
Ответ Создать тему
Опции темы

Текущее время: 20:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru