Форум: Форум C++Разное
Новые темы: 00
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум C++

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Потоки ввода-вывода и файлы
 
 автор: Drive.it   (29.01.2012 в 20:54)   письмо автору
 
 

Добрый день ! Опыта у меня мало в программировании,
в данный момент прорабатываю потоки в с++.
Насколько актуально знать данный раздел ? А именно - столкнулся с такой ситуацией, что приходится работать с классами, которых по сути не вижу (есть документация по методам класса и перегруженным операторам), ifstream, ofstream, а от них open(), write(), read(). Казалось бы бери да используй, но пугает актуальной данных классов. fstream применим где-либо кроме консольных приложений ? Тратить кучу времени на запоминание его методов, а это именно запоминание, потому что голый код я не вижу и как они там работают сказать не могу, но сам принцип похож на: создал поток вывода -> название дал -> записал данные -> закрыл -> создал поток ввода -> указал нужный файл -> считал данные.

Какие перспективы открывает знание данной области с++?

Еще вопрос к старичкам, как часто вы пользуетесь потоками, файлами на практике, где конкретно применяли. Помогите встрехнуть мою голову в нужном направлении =) очень нужно, спасибо !

  Ответить  
 
 автор: cheops   (29.01.2012 в 21:37)   письмо автору
 
   для: Drive.it   (29.01.2012 в 20:54)
 

>Насколько актуально знать данный раздел ?
Черт его знает... хуже не будет это точно, особенно, если вам нужно много и интенсивно работать с текстовыми файлами.

>Какие перспективы открывает знание данной области с++?
Ваши программы будут работать в любой операционной системе. Собственно это то, за что ценятся языки высокого уровня и их стандарты. Т.е. написали программу и с 98% вероятностью в 2020 году ничего даже править не придется, чтобы откомпилировать её под 128-битный Mac. В этом сила стандартных средств языков - они везде работают. Будущие поколения расшибутся в лепешку, но сделают все от них зависящее, чтобы новые стандарты были совместимы со старыми программами.

>Еще вопрос к старичкам, как часто вы пользуетесь потоками, файлами на практике, где
>конкретно применяли.
Ну вообще говоря нет, не часто... это довольно медленно и неудобно. Даже если вы перезагружаете операторы ввода и вывода, и не в час по чайной ложке записываете каждую букву, а крупными массивами данных, все-равно это очень высокий уровень... системные вызовы гораздо быстрее... особенно какое-нибудь отображение в память в Windows... Представьте, вы создаете файл в виртуальной памяти, записываете все что вам нужно в быструю оперативную память, а потом закрываете участок и получаете образ этой памяти на жестком диске, причем с той скоростью, на которую только способна операционная система... Ну в UNIX такого, конечно, нет, но там системные вызовы есть и понятно, что все высокоуровневые средства C++ это обертки вокруг этих вызовов и действуют они медленнее... Собственно потоки - это ближе к UNIX-модели, в Windows есть средства покруче, можно просто взять объект из памяти и положить на диск, а в следующий раз открыть его прямо в память - будто и не закрывал программу и все это одним вызовом, которому наплевать какой сложности объект подвергается сохранению на диск или отображению в память.

Т.е. потоки ввода-вывода важны, когда вам нужно, чтобы ваш код работал (преимущественно с тестовыми файлами) на нескольких операционных системах, особенно UNIX-подобных, и его не нужно было переписывать под другие операционные системы. Часто у вас такие задачи возникают? Если часто, тогда лучше в потоках ввода-вывода разбираться, если вы ориентируетесь только на Windows, может статься, что они вам вообще не потребуются.

  Ответить  
 
 автор: Drive.it   (29.01.2012 в 22:23)   письмо автору
 
   для: cheops   (29.01.2012 в 21:37)
 

Спасибо за развернутый ответ ! В memories

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования