c++ что такое #include (include с++)
Primary tabs
это "прямая вставка" заголовочных файлов.
то есть: этой директивой мы говорим компилятору, что собираемся использовать идентификаторы, которые собственно говоря, и перечислены в заголовочных файлах.
Компилятор, когда делает свою работу составляет таблицу идентификаторов.
Когда он компилирует ваши функции (переменные, константы, классы) то вместе с кодом в объектный файл попадают их имена, а вот для тех которые вы подключаете с помощью инклюда - он не генерит код для них, просто на эти идентификаторы - ссылается.
Работа разрешения этих ссылок - это как раз работа линковщика, поэтому, если у вас в проекте не подключена библиотека (в свойствах проекта), а вы пользуетесь заголовочным файлом, то получите ошибку линковки, хотя компилятор спокойно сделает свою работу и создаст объектный файл.
- Log in to post comments
- 5394 reads
baton
Sat, 10/13/2012 - 18:21
Permalink
)))))))))))
)))))))))))
чудесно)
но, может вынести подобные темы в отдельную тему или даже раздел форума? а то будет не очень удобно первокурснику с хвостами по с++ разыскивать АЗЫ среди продвинутых статей.
vedro-compota
Sat, 10/13/2012 - 18:35
Permalink
есть два пути решения
есть два пути решения подобных проблем ,оба из которых можно развивать на разном уровнеи разными средствами - но в любом случае одновременно:
первый вариант как раз и подразумевает создание чего-то вроде книги, из которой иерархически ссылки указывают на отдельные страницы с уроками/определениями и/или примерами.
Первый вариант всегда вполне зависит и от вас, товарищ baton.
Так для Си++ основная тема уже определена но там пока что отсутствует базовый раздел.
А потому - если вы только начали изучать си++ - вы вполне можете его дописать.
Причём следует писать не столько после решения задачи (подобное имеет отношение скорее к чему-то новому - прежде не опубликованному ни в какой форме) сколько во время поиска решения - то есть писать те вопросы которые возникают и потом сразу же записывать ответы.
_____________
матфак вгу и остальная классика =)