![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
Andrew Selivanov |
![]() ![]()
Сообщение
#1
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 249 Регистрация: 9.10.2007 Из: Москва Пользователь №: 3 Спасибо сказали: 15 раз(а) Репутация: ![]() ![]() ![]() |
Все мы иногда используем так называемые forward declarations. Обнаружил интересное правило, которое помогает пользоваться ими более осознанно:
Если в модуле используются только ссылки на класс A, то заголовочный файл этого класса подключать не обязательно, достаточно использовать forward declaration.
Если класс B наследует от класса A или явно/неявно использует его, необходимо подключить загаловочный файл A.
http://www-subatech.in2p3.fr/~photons/suba...CPP-INC-1.shtml |
|
|
![]() |
AD |
![]()
Сообщение
#2
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: ![]() ![]() ![]() |
Все мы иногда используем так называемые forward declarations. Обнаружил интересное правило, которое помогает пользоваться ими более осознанно: Если в модуле используются только ссылки на класс A, то заголовочный файл этого класса подключать не обязательно, достаточно использовать forward declaration. Лично я об этом давно знал! ![]() ![]() |
|
|
void* |
![]()
Сообщение
#3
|
![]() Программист-самоучка ![]() ![]() ![]() Группа: Участник Сообщений: 429 Регистрация: 4.6.2008 Пользователь №: 193 Спасибо сказали: 28 раз(а) Репутация: ![]() ![]() ![]() |
я тоже, но как-то натыкался на такие грабли, да и все равно новичкам пригодится
|
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 2.6.2025, 0:39 |