Заголовок включения файла Quesiton - PullRequest
0 голосов
/ 28 июня 2011

Допустим, у меня есть заголовочный файл a.hxx, который включает в себя b.hxx и c.hxx.

Теперь, если я включаю этот файл a.hxx в файл d.cxx, делает ли b.hxxи c.hxx автоматически (неявно) включается?

PS: Это не домашнее задание.Мне было любопытно узнать об этом.

Ответы [ 2 ]

0 голосов
/ 28 июня 2011

Да, все воспринимается как один большой поток символов:

pax$ cat a.hxx
#warning START A
#include "b.hxx"
#include "c.hxx"
#warning END.. A
//==============

pax$ cat b.hxx
#warning START B
#warning END.. B
//==============

pax$ cat c.hxx
#warning START C
#warning END.. C
//==============

pax$ cat d.cxx
#warning START D
#include "a.hxx"
#warning END.. D
//==============

pax$ gcc -c -o d.o d.cxx
d.cxx:1:2: warning: #warning START D
In file included from d.cxx:2:
a.hxx:1:2: warning: #warning START A
In file included from a.hxx:2,
                 from d.cxx:2:
b.hxx:1:2: warning: #warning START B
b.hxx:2:2: warning: #warning END.. B
In file included from a.hxx:3,
                 from d.cxx:2:
c.hxx:1:2: warning: #warning START C
c.hxx:2:2: warning: #warning END.. C
In file included from d.cxx:2:
a.hxx:4:2: warning: #warning END.. A
d.cxx:3:2: warning: #warning END.. D
0 голосов
/ 28 июня 2011

Да, это так.Когда вы используете файл d.hxx, он содержит все содержимое a.hxx b.hxx и c.hxx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...