Шаг 43 - Директива #Pragma

----- Original Message ----- 
From: Alexander A. Motrichuk 
To: kaev@yandex.ru
Subject: MFCByStep from Alexander?

Огромное спасибо за столь полное освещение вопросов 
программирования на данном сайте. 
У меня вопрос к тебе? Ответь если не затруднит. 
У меня большая путаница в голове по поводу директивы прекомпилятора 
#PRAGMA 
Объясни в двух словах ее основное назначение??? 
Заранее спасибо !!!

Это директива препроцессора, которая реализует возможности компилятора. Эти особенности могут быть связанны с реализаций компилятора. И разные реализации компиляторов могут поддерживать разные директивы. Общий вид директивы такой.

#pragma token-string

token-string - строка символов команда и параметры компилятора

Вот примеры:

#pragma message( строка сообщения ) 
#pragma comment(lib,"setupapi.lib") 

Многие директивы, которые устанавливаются с помощью #pragma можно установть из среды VC. На мой взгляд использование #pragma в коде CPP более читаемо и не надо лазить по настройкам. Вот аналог директивы #pragma comment(lib,"user32.lib") в IDE.

43.gif (4304 b)

Компилятор VC поддерживает следующие директивы:

alloc_text 
comment
init_seg1 
optimize 
auto_inline 
component 			
inline_depth pack 
bss_seg 
data_seg 
inline_recursion 
pointers_to_members1 
check_stack 
function 
intrinsic setlocale 
code_seg 
hdrstop 
message 
vtordisp1 
const_seg 
include_alias 
once warning 

Наверное про каждую из них нужно написать отдельно. Со временем напишу.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 8.11.2000