Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.147.43.190] |
|
Сообщ.
#1
,
|
|
|
В начале cpp файла пытался написать так:
#ifdef __VISUAL_CPP_ #include "StdAfx.h" #endif // __VISUAL_CPP_ Почему на #endif компилятор ругается? Fatal error C1020: unexpected #endif |
Сообщ.
#2
,
|
|
|
Потому что ты компиляешься с опцией "Use precompiled-headers". В этом случае компилятор считает, что все, что указано до строчки #include "stdafx.h" (включительно) является этим самым precompiled-header'ом. Таким образом получается, что когда pch (precompiled-header) создавался (это происходит при компиляции stdafx.cpp) строчки #ifdef __VISUAL_CPP_ в нем не было. При компиляции же указанного тобою файла компилятор заменят все, что до #include "stdafx.h" на уже ранее созданный pch, и получается, что директива #endif ничего не закрывает.
|
Сообщ.
#3
,
|
|
|
Цитата Flex_Ferrum @ 16.01.04, 07:27 Потому что ты компиляешься с опцией "Use precompiled-headers". В этом случае компилятор считает, что все, что указано до строчки #include "stdafx.h" (включительно) является этим самым precompiled-header'ом. Таким образом получается, что когда pch (precompiled-header) создавался (это происходит при компиляции stdafx.cpp) строчки #ifdef __VISUAL_CPP_ в нем не было. При компиляции же указанного тобою файла компилятор заменят все, что до #include "stdafx.h" на уже ранее созданный pch, и получается, что директива #endif ничего не закрывает. Вот блин... Никогда бы не подумал. Спасибо. |