在下面的示例代码中,为什么sample_breaks编译失败?
#define ONE_FRAME_OF_30FPS_2 = 1.0/30.0;
void sample_works() {
double partOfSecondAVFoundationNumber = 2 * 1.0/30.0;
}
void sample_breaks() {
double partOfSecondAVFoundationNumber = 2 * ONE_FRAME_OF_30FPS_2;
}
最佳答案
变成这样:
void sample_breaks() {
double partOfSecondAVFoundationNumber = 2 * = 1.0/30.0;;
}
预处理后。所以你会预料到一个错误。
更改为
#define ONE_FRAME_OF_30FPS_2 (1.0/30.0)
相反。
关于c - 将 define 与 double constant 一起使用会导致在内联工作时计算失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22762959/