Я використовую Visual Studio 2010. Я читав, що в C ++ краще використовувати, <cmath>
а не <math.h>
.
Але в програмі я намагаюся написати (консольний додаток Win32, порожній проект), якщо пишу:
#define _USE_MATH_DEFINES
#include <math.h>
він компілюється, тоді як якщо я пишу
#define _USE_MATH_DEFINES
#include <cmath>
це не вдається з
помилка C2065: 'M_PI': незадекларований ідентифікатор
Це нормально? Чи має значення, чи використовую я cmath або math.h? Якщо так, як я можу змусити це працювати з cmath?
ОНОВЛЕННЯ : якщо я визначаю _USE_MATH_DEFINES у графічному інтерфейсі, це працює. Будь-яка підказка, чому це відбувається?