2010-07-09 2 views

ответ

9

Вы можете сделать это с помощью препроцессора:

Ссылка: http://predef.sourceforge.net/precomp.html

Для GCC:

#if defined(__GNUC__) 
# if defined(__GNUC_PATCHLEVEL__) 
# define __GNUC_VERSION__ (__GNUC__ * 10000 \ 
          + __GNUC_MINOR__ * 100 \ 
          + __GNUC_PATCHLEVEL__) 
# else 
# define __GNUC_VERSION__ (__GNUC__ * 10000 \ 
          + __GNUC_MINOR__ * 100) 
# endif 
#endif 

Для MSVC просто использовать:

_MSC_FULL_VER 
+0

+1: вы избили меня тоже;) –

+0

Err ... Что делать, если я использовал компиляторы Microsoft? – Arafangion

+0

_MSC_FULL_VER Посмотрите на ссылку. Это ссылка для определенного спецификатора префиксов компилятора. –

4

Нет, способ получить имя компилятора сам по себе является компилятором: -P.

gcc предоставляет макрос __VERSION__.

Смежные вопросы