Tôi đang sử dụng Visual Studio 2010. Tôi đã đọc rằng trong C ++ thì tốt hơn là nên sử dụng <cmath>
hơn là <math.h>
.
Nhưng trong chương trình tôi đang cố gắng viết (ứng dụng bảng điều khiển Win32, dự án trống) nếu tôi viết:
#define _USE_MATH_DEFINES
#include <math.h>
nó biên dịch, trong khi nếu tôi viết
#define _USE_MATH_DEFINES
#include <cmath>
nó không thành công với
lỗi C2065: 'M_PI': mã định danh không được khai báo
Nó có bình thường không? Có vấn đề gì không nếu tôi sử dụng cmath hoặc math.h? Nếu có, làm thế nào tôi có thể làm cho nó hoạt động với cmath?
CẬP NHẬT : nếu tôi xác định _USE_MATH_DEFINES trong GUI, nó sẽ hoạt động. Bất kỳ manh mối tại sao điều này đang xảy ra?