Abs62
Gold Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору DamnCliffracers Нет, смысл в другом. Чтобы не возникало конфликтов при неявном подключении хидеров через другие хидеры. Ну, как-то так: foo.h: Код: #include <iostream> void foo(std::ostream & os, int arg); | bar.h: Код: #include <iostream> void bar(std::ostream & os, int arg); | main.cpp: Код: #include <iostream> #include "foo.h" #include "bar.h" int main() { // ... foo(std::cout, 10); bar(std::cout, 20); } | Вот в такой конструкции хидер iostream по факту включается в один .cpp несколько раз. А потому должен быть защищён от повторной обработки либо гвардами, либо pragma once. Ситуация, встречающаяся даже не часто, а практически постоянно.
---------- 0 программистов ругал сердитый шеф Потом уволил одного, и стало их FF |
| Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 11:18 02-03-2017 | Исправлено: Abs62, 11:19 02-03-2017 |
|