重载函数的调用在使用 srand(time(0)) 时是不明确的
call of overloaded function is ambiguous using srand(time(0))?
>我在程序中使用了srand(time(0))来生成随机数,问题是我的编译器显示一个错误,即对重载的"srand(time_t)"的调用是不明确的,我不知道我做错了什么。请帮忙。我想生成随机数以用于我的扫雷程序,但它给出了此错误。通常在任何其他程序中,我只是简单地输出值,它可以正常工作,但在这种情况下,我将随机值初始化为变量。我不知道该怎么办
这意味着由于某种原因,您在某处声明了非标准重载srand
。
要么寻找并销毁流氓重载;要么指定std::srand
(如果你的标准库实现没有错误);或者将参数类型转换为unsigned int
以明确选择标准。
另外,请查看新的C++随机数库:http://en.cppreference.com/w/cpp/numeric/random。它有点复杂,但更灵活,并且没有全球国家的邪恶。
相关文章:
- Visual C++(VS2017)中用户定义的转换不明确
- 重载类方法的不明确调用
- 为函数定义符号不明确的指针参数
- 父类的私有函数会导致对具有相同名称和相似参数的子类中的公共函数的不明确调用
- 在 C++17 中的命名空间和子命名空间中重载运算符是不明确的
- C++ 编译器错误:P1LinkedList.cpp:145:错误:重载的"to_string(int&)"调用不明确
- 对重载函数find_first_not_of的不明确调用
- 不明确的成员模板查找
- gcc出现不明确的模板实例化错误
- 调用'Node'构造函数是不明确的
- 如何解决不明确的运算符过载问题?
- 使用 nullptr 调用重载方法是不明确的
- "fpclassify":对重载函数的不明确调用
- 对"列表"的引用不明确,包括头文件
- 删除全局隐式函数 - 避免使用不明确的运算符
- 当接收到不明确的规范时,表示图的邻接列表的数据结构
- "byte":使用Crypto++和Windows SDK时出现不明确的符号错误
- 使用 std::iterator_traits<> 时编译时错误不明确
- 不明确的函数模板
- 重载函数的调用在使用 srand(time(0)) 时是不明确的