Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Подключение заголовочных файлов.  (Прочитано 11448 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Kuzya
Гость
« : 04-09-2008 05:52 » 

Здравствуйте. Скажите пожалуйста почему некоторые файлы в коде программы подключаются вот так:
Код:
#include "имя.h"
а некоторые вот так:
Код:
#include <имя>
Чем отличаются оба варианта?
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #1 : 04-09-2008 06:01 » 

Цитата: msdn
Quoted form - This form instructs the preprocessor to look for include files in the same directory of the file that contains the #include statement, and then in the directories of any files that include (#include) that file. The preprocessor then searches along the path specified by the /I compiler option, then along paths specified by the INCLUDE environment variable.

Angle-bracket - form This form instructs the preprocessor to search for include files first along the path specified by the /I compiler option, then, when compiling from the command line, along the path specified by the INCLUDE environment variable.
Записан

McZim
Команда клуба

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« Ответ #2 : 04-09-2008 06:04 » 

#include "имя.h" --тут вы указываете путь к "ВАШИМ" заголовочным файлам, т.е. можно написать вот так: #include "/путь/имя.h"
#include <имя> -- так подключаются "стандартные заголовочные файлы". Например для ОС Linux при подключении <iostream>, путь будет такой: /usr/include/c++/4.2/iostream
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
Антон (LogRus)
Глобальный модератор

ru
Offline Offline
Пол: Мужской
Внимание! Люблю сахар в кубиках!


WWW
« Ответ #3 : 04-09-2008 06:04 » 

#include "имя.h"
первый вариант предполагает, что файл лежит, где рядом с текущим cpp или h, т.е. сначала ищим рядом, а потом уже бегаем по include dirs

#include <имя.h>
первый вариант предполагает, что файл искать рядом с текущим cpp или h смысла нет и его сразу ищем в include dirs

#include <имя>
ни что не мешает создавать хедеры не указывая расширение Улыбаюсь но обычно это заголовочные файлы из состава STL с некоторых пор у них отобрали расширение h, в принцепе можно указать и с "h", но в этом случае считается, что это какой-то старый код и содержимое будет размещаться не пространстве std, а глобальном пространсве

и чего-то у меня дежавю вроде не первый раз спрашивают

Ну Алексей1153++ меня опередил и Максим Улыбаюсь
Записан

Странно всё это....
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #4 : 04-09-2008 08:48 » 

LogRus, зато твой ответ самый полный, точный и по русски. Ага
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
Kuzya
Гость
« Ответ #5 : 05-09-2008 04:41 » new

спасибо всем большое!
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines