Я изучаю c ++ и продолжаю сталкиваться с общей проблемой: я не могу найти причины имен функций.
Например, функция ifstream seekg (). Я пытаюсь найти эту функцию на таких сайтах, как:
http://www.cplusplus.com/reference/istream/istream/seekg/
https://en.wikipedia.org/wiki/Seekg
http://en.cppreference.com/w/cpp/io/basic_istream/seekg
Много раз, ни один из этих источников не дал мне понять, почему он называется «seekg». Почему в конце есть буква «г»? почему у офстрима есть seekp (а не g)?
Знание такой информации сделает запоминание имен функций намного проще. По сути, я ищу ресурс для поиска этимологии для имен функций. 🙂
Спасибо за любую помощь,
Я могу ответить на конкретный вопрос здесь. seekg
относится к поиску, осуществленному получить площадь, в то время как seekp
работает на положить площадь.
Причина различия заключается в том, что потоки поддерживают отдельные области — одна для чтения, обычно называемая источником (область получения), а другая для записи, известная как приемник (область размещения). Довольно часто один работает с потоками, которые ограничены только одним из них — std::ifstream
только получил площадь, в то время как std::ofstream
положил область — но иногда вы имеете дело с обоими.
Других решений пока нет …