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

Передача потока по параметру функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Нарушение прав доступа при записи http://www.cyberforum.ru/cpp-beginners/thread202922.html
Создаю свой класс ошибок следующим образом: class SecureTransportException { private: SecureLibraryErrorCode errorCode_; public: std::string knownErrorCodes_; //30 - кол-во ошибок ...
C++ Бесконечность Есть значит функция нахождения интеграла Симпсоном, мне нужно посчитать интеграл от sin(x)/x на промежутке от 0 до бесконечности, как лучше всего передать значения в функцию? Я пробовал... http://www.cyberforum.ru/cpp-beginners/thread202920.html
Программка выдает не то что хотелось C++
Всем здрасте! Столкнулся со следующей проблемой. На ранних этапах изучения C++ сам себе придумываю задачки,т.к. в книжке по которой изучаю практически ничего нет,только простейшие варианты. Хотел...
Микроконтроллер на C++ C++
Доброго дня суток. Постораюсь быть обьективным. Есть контроллер. Есть к нему аккселерометр (очевидно что это - прибор измеряющий ускорение в пространстве). Есть программа которую написал...
C++ Как запустить программу в Microcoft Visual C++ 2010 ??? знаю вопрос дурацкий но я новенький) http://www.cyberforum.ru/cpp-beginners/thread202916.html
#include <graphics.h> #include <conio.h> #include <stdlib.h> #include <dos.h> #define N 1000 int main() { int gdriver = DETECT, gmode; initgraph(&gdriver, &gmode, "c:\bc\bgi");
C++ В массиве А найти сумму элементов, расположенных между минимальным и максимальным элементами массива Есть программа, которая выполняет следующее: 1) Ввод массива 3 разными способами. 2) Удаляет из массива первый из нечётных элементов. Нужно изменить код так, чтобы программа вместо Удаления из... подробнее

Показать сообщение отдельно
oinari
5 / 5 / 0
Регистрация: 18.10.2009
Сообщений: 69

Передача потока по параметру функции - C++

03.12.2010, 23:31. Просмотров 3804. Ответов 3
Метки (Все метки)

Доброго времени суток.
Есть пара вопросов

Допустим у нас имеется функция открытия файла:

C++
1
2
3
4
5
6
7
8
9
10
int open_file()
{
   char file_name[50];
   cin >> file_name;
   ifstream file_obf(file_name); //communication stream output with a file
   if(file_obf.is_open()) cout << "The stream is successfully connected with a file.\n";
   //работаем с ним если открылся
   file_obf.close();  //closing stream
   return 1;
}
и чтобы лишний раз не открывать файл в новой функции, где мы будем также с ним работать,
я хочу передать в параметрах сам поток.

вот пример:

C++
1
2
3
4
5
6
7
8
9
RemoveSLCom(file_obf);
//--------------------------------
int RemoveSLCom(ifstream proc_file)
{
    if(proc_file.is_open())     cout <<"1";
    else cout << "0";
    proc_file.close();  //closing stream
    return 1;
}
Компилятор выдал:
File3.cpp(29): parsing: int open_file()
File3.cpp(55): decision to instantiate: ifstream::basic_ifstream(ifstream &)
--- Resetting parser context for instantiation...
1. Как это осуществить или я могу заного во второй ф-ии связать уже новый поток с этим же файлом.
2. Строка
C++
1
cin >> file_name;
как сделать возможным ввод имени файла с пробелами?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru