c++错误:初始化器元素不是常量
C++ error: initializer element is not constant
我不能让这个简单的c++代码工作:
int secInt = 5;
double rubbish = secInt/60;
double factor = floor(rubbish);
我总是从第3行
得到"ERROR: initializer element is not constant"Factor在日志
中总是返回0.00有谁能帮我一下吗?我觉得我忽略了一件很简单的事情。
这个错误的例子可以在这里看到:http://ideone.com/2Wrkr9
你的代码应该在你的程序的main
部分:
int main()
{
int secInt = 583;
double rubbish = secInt/60.0;
double factor = floor(rubbish);
}
您还应该使用标准的c++头文件,如<cmath>
double rubbish = secInt/60;
应该double rubbish = static_cast<double>(secInt)/60;
由于secInt =5
,所以floor(rubbish)
应该是0
,即使有上述修正。
如果源文件中没有任何其他函数,则至少应该有一个main
函数。main
是入口点。
int main()
{
int secInt = 5;
double rubbish = static_cast<double>(secInt)/60.0;
double factor = floor(rubbish);
return 0;
}
您忘记将代码包含在函数中了。
试试这个。
int main()
{
int secInt = 5;
double rubbish = secInt/60.0;
double factor = floor(rubbish);
}
c++将开始执行名为main
的函数中的代码,并从那里调用从main调用的任何函数。
相关文章:
- 如何在 c++ stl 中获取列表中被推回的元素的地址,在常量时间内?
- 是否可以使用 new 指定具有宏常量的动态分配数组的元素?
- 常量数组如何在每个元素中只能包含字符,而 char* 数组能够指向每个元素中的字符串?
- 常量映射和常量元素映射之间的区别
- 如何打印出常量字符串的第一个元素?
- 如何从模板获取常量矢量元素的引用
- 使用常量键从集合中擦除元素
- 返回对私有向量成员元素的非常量引用是否是一种不好的做法
- 使用对另一个元组不同类型的元素的非常量引用来初始化元组的元素
- 通过const_cast修改常量 std::vector 的元素<T>
- 对列表中的任意元素的常量时间访问 (C++)
- 错误推回对常量向量元素的引用
- 常量时间更改数组的前 k 个元素(C++)
- 如果 QList 实例是常量,是否意味着每个元素都是常量
- 如何删除类型名中每个元素的常量引用修饰符.T.
- 如何调用 boost multi_index元素的非常量成员函数
- 标准::矢量元素中的常量引用
- 常量向量暗示常量元素
- 从常量迭代器到映射向量,获取映射向量中映射元素的键和值
- 在重载中返回常量元素