2011-12-16 32 views

Trả lời

7

Giá trị của macro __cplusplus được cho là nhằm phục vụ mục đích này. Thật không may, GCC có (trước 4.7) luôn đặt điều này thành 1, làm cho nó không sử dụng được cho mục đích này.

(Các giá trị là 199711L cho C++ 98/03, và 201103L cho C++ 11.)

+0

Ngoài ra còn có những vấn đề mà các vĩ mô được thiết lập không nhất quán. Giá trị sẽ là gì đối với trình biên dịch hỗ trợ các phần của C++ 11? :/ – Xeo

+1

@Xeo: '__GXX_EXPERIMENTAL_CXX0X__' cho clang và gcc. – kennytm

+0

@KennyTM: với libstdC++. Trong tiếng kêu có '__GXX_EXPERIMENTAL_CXX0X__' không được xác định. nó cũng phải được loại bỏ khi C++ 11 không còn là thử nghiệm nữa – Dani

Các vấn đề liên quan