Форум программистов, компьютерный форум CyberForum.ru

объявление директив - C++

Восстановить пароль Регистрация
 
casely
0 / 0 / 0
Регистрация: 21.01.2012
Сообщений: 4
21.01.2012, 11:29     объявление директив #1
здравствуйте, что будет если два раза одинаково объявить директиву? Допустим
C++
1
2
3
#include <iostream>
#include "example.h" 
#include "example.h"
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
21.01.2012, 11:37     объявление директив #2
Цитата Сообщение от casely Посмотреть сообщение
Допустим
Смотря что находится в example.h.
Байт
 Аватар для Байт
13952 / 8783 / 1221
Регистрация: 24.12.2010
Сообщений: 15,891
21.01.2012, 11:51     объявление директив #3
Есть специальная техника, блокирующая возможные ошибки
C
1
2
3
4
#if !defined _EXAMPLE_H
#define _EXAMPLE_H
....
#endif
Если твой examle.h написан в этом общепринятом стиле, то все будет хорошо

Добавлено через 2 минуты
И главное, понимать, что тут просто файл вставляется на место #include "файл" и больше ничего.
casely
0 / 0 / 0
Регистрация: 21.01.2012
Сообщений: 4
21.01.2012, 12:04  [ТС]     объявление директив #4
Байт,
да написано именно в этом стиле, и программа работает. "Но почему она работает с двумя объявлениями?" - вот такой вопрос задали мне
Байт
 Аватар для Байт
13952 / 8783 / 1221
Регистрация: 24.12.2010
Сообщений: 15,891
21.01.2012, 12:10     объявление директив #5
Цитата Сообщение от casely Посмотреть сообщение
Байт,
да написано именно в этом стиле, и программа работает. "Но почему она работает с двумя объявлениями?" - вот такой вопрос задали мне
При первом включении _EXAMPLE_H не определен и все до #endif благополучно вставляется в файл. А при втором _EXAMPLE_H уже определился, и весь тест до #endif пропускается
ЗЫ. Я не очень точно выразился. Файл не просто вставляется, а с учетом директив препроцессора.
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16824 / 5245 / 319
Регистрация: 30.03.2009
Сообщений: 14,121
Записей в блоге: 26
21.01.2012, 12:12     объявление директив #6
casely, объяснение на пальцах см. здесь Для чего нужен define?

Цитата Сообщение от casely Посмотреть сообщение
"Но почему она работает с двумя объявлениями?" - вот такой вопрос задали мне
Такой вопрос мог задать тлько идиот (только ты об этом ему не говори). Потому что это НЕ ОБЪЯВЛЕНИЕ
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.01.2012, 12:15     объявление директив
Еще ссылки по теме:

Подключение директив препроцессора C++
C++ вернуть интовое значение за счет директив препроцессора
C++ Последовательность директив #include при работе со списками структур

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
casely
0 / 0 / 0
Регистрация: 21.01.2012
Сообщений: 4
21.01.2012, 12:15  [ТС]     объявление директив #7
все идею понял )
Yandex
Объявления
21.01.2012, 12:15     объявление директив
Ответ Создать тему
Опции темы

Текущее время: 09:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru