Udostępnij za pośrednictwem


#PreCompiled dyrektywa preprocesora

#PreCompiled:  BOOL

Dyrektywa #PreCompiled określa, czy plik źródłowy jest wstępnie skompilowany.

Jeśli BOOL jest true, zakłada się, że plik źródłowy jest wstępnie skompilowany. W przeciwnym razie, jeśli plik źródłowy jest przywołyny za pomocą dyrektywy #Include, plik jest zawarty w wierszu.

Dyrektywa #PreCompiled musi pojawić się przed jakąkolwiek dyrektywą #Include w pliku źródłowym GDL; w przeciwnym razie jest ignorowany. Wymagana jest wartość BOOL.

Pliki oznaczone jako wstępnie skompilowane zostaną przeanalizowane w kontekście głównym. Oznacza to, że każdy kontekst ustanowiony przez hosta lub dołączanie plików GDL zostanie utracony. Jeśli na przykład symbole preprocesora zdefiniowanego przez plik GDL hosta przed dołączeniem prekompilowanego pliku, te symbole nie będą istnieć, gdy prekompilowany plik zostanie przeanalizowany. Ten typ analizowania gwarantuje, że nie można utworzyć wielu wersji wstępnie skompilowanego pliku przy użyciu bloków #Ifdef i mieć różne hosty definiują różne symbole w celu uzyskania dostępu do różnych bloków #Ifdef. Ponieważ wstępnie skompilowany plik nigdy nie jest ponownie omówiony, będzie tylko jedna unikatowa wersja. W związku z tym składnik zapisywania wstępnie skompilowanego pliku nie może polegać na żadnych symbolach preprocesora zdefiniowanego zewnętrznie.

Należy również pamiętać, że wstępnie skompilowane pliki muszą być unikatowe i muszą być niezależne od hosta, który je zawiera. Wstępnie skompilowane pliki nie opierają się na żadnej dołączonej zawartości, do których odwołuje się plik hosta lub jakiejkolwiek zawartości, która może być zdefiniowana w pliku hosta.

Ta dyrektywa preprocesora jest nowa dla języka GDL.