Khi sử dụng câu lệnh như #if TRUE
, tôi nên làm gì? Một lời giải thích sẽ rất được đánh giá cao! Tôi hiểu cách hoạt động của #if 1
, nhưng nó mang lại kết quả hoàn toàn khác trong mã của tôi so với sử dụng #if TRUE
. Tôi hiểu #if
là một chỉ thị có điều kiện và điều đó ngụ ý; nó chỉ là phần TRUE
(hoặc FALSE
) mà tôi không hiểu. Dường như việc sử dụng nó theo cách này không bao giờ thực thi mã theo sau câu lệnh. Dưới đây là ví dụ:C++, sử dụng #if TRUE chỉ thị có điều kiện
#if TRUE
cout << "true" << endl;
#endif
#if FALSE
cout << "false" << endl;
#endif
Tôi chưa bao giờ thấy chữ "true" hoặc "false" được in trên màn hình và sử dụng Visual Studio, câu lệnh bên trong sẽ tự động chuyển sang màu xám.
Bạn chỉ cần kiểm tra xem các macro đó có được khai báo hay không. Thông thường trong WinDef.h chúng được khai báo sẽ được sử dụng với BOOL. –
Có phải "TRUE" không phải là một từ dành riêng không? – Hieli
Không, nó chỉ là một macro được khai báo với #define win Win.h (xem http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751(v=vs.85).aspx). Từ dành riêng là "true" (chữ thường). –