| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Для новичков > В c-tor передаю ссылку созданного std::ifstream |
| Автор: EvilsInterrupt 21.8.2011, 17:00 | ||||
| Сложно было описать суть вопроса в теме, поэтому прошу прощения ) В ввиду того что с С++ сейчас все реже и реже контактирую, многое забывается ((( Ситуация проста у меня есть класс, который внутри себя имеет приватные объект std::ifstream и объект еще одного класса созданного мною. В секции инициализации при попытке создания моего класса передаю ссылку(как я думаю) получаю ошибку компиляции. Примерный код того что происходит у меня, таков:
Ошибка, как вы уже догадались возможно, такая:
Вопросы: 1) Разрешено ли такое? Мне думается да, ведь объект std::ifstream декларирован раньше, чем объект моего класса и поэтому уже создан! 2) Как лучше спроектировать? Я хочу сделать независимым от стрима класс Image и поэтому принимаю ссылку на стрим. |
| Автор: boostcoder 21.8.2011, 17:23 |
| http://liveworkspace.org/code/c69579234e34b60e24fe4ae5f2f950e9 Добавлено через 2 минуты и 26 секунд или так: http://liveworkspace.org/code/0226e7bad31eae2eff8eeb859a6a44c6 |
| Автор: EvilsInterrupt 21.8.2011, 17:30 |
| boostcoder, Второй вариант, что был добавлен лучше отражает мое стремление. Я вижу что дело в том что я должен указать явно std::istream. Но если верить http://cplusplus.com/reference/iostream/iostream/ то разве не могу принимать std::iostream ? он ведь является частично и std::istream-ом!!! Добавлено через 24 секунды А вообще спасибо, за попытку помочь! ;) |
| Автор: EvilsInterrupt 21.8.2011, 19:20 | ||
mes,
Не исключено! ;))) Но видимо это уже другая тема. |