Clang++ 非静态数据成员初始化错误?C++11.
Clang++ non-static data member initialization error? C++11
我似乎无法弄清楚Clang在说什么,或者它是否正确,因为G ++ 4.7似乎编译得很好。
该错误来自尝试为非静态成员初始化带有大括号std::uniform_int_distribution
。
以下失败(token_count
是模板参数): std::uniform_int_distribution<Int> random_dist{0, token_count-1};
出现错误:
error: chosen constructor is explicit in copy-initialization
std::uniform_int_distribution<Int> random_dist{0, b-1};
^~~~~~~~
/usr/include/c++/v1/algorithm:2644:14: note: constructor declared here
explicit uniform_int_distribution(result_type __a = 0,
但是,我可以通过这样做来初始化它:
std::uniform_int_distribution<Int> random_dist = std::uniform_int_distribution<Int>(0, token_count - 1);
我正在使用以下命令来编译它:clang++ -std=c++11 -stdlib=libc++ -lc++abi
与 Clang-3.2 一起使用。
clang -v
输出 :
clang version 3.2 (trunk 157320)
Target: x86_64-unknown-linux-gnu
Thread model: posix
您可能有一个尚未实现通用初始值设定项的 clang 版本。 Tip-of-trunk clang 编译您的代码。 您可以使用以下方法检查此功能:
#if __has_feature(cxx_generalized_initializers)
以下是您可以检查的功能列表:
http://clang.llvm.org/docs/LanguageExtensions.html#cxx11
相关文章:
- C++11 中好友模板类的视觉C++错误
- 我将 Makefile 更改为 C++11 版本,但仍然收到列表初始值设定项错误
- C++ Visual Studio 错误:名称后跟'::'必须是类或命名空间名称 (DirectX 11)
- 使用 C++11 时列表中出现编译错误
- main.cpp(11):错误 C2059:语法错误:"字符串"
- C++ 分段错误:11 错误,同时编码将两个数字相加的链接列表
- 分割错误 11:尝试使用 cin 输入 B[1] 时
- 外部函数在 main() 上调用时返回分段错误 11.(C++)
- C++ 11 Boost 1.65 recursive_directory_iterator给出分段错误
- 在 centos 7 上编译 Qt 5.11.1 中的错误
- 覆盖 iostream <<会导致错误 - C++ 11
- 树实现给出分段错误(核心转储)错误 c++ 11
- 奇怪的错误C++ 11 模板类
- CMAKE错误:C 11不支持Mac High Sierra
- Visual Studio 2015 c++ 项目错误 c++11 标准
- Clang++ 非静态数据成员初始化错误?C++11.
- 简单C++代码上的运行时错误信号11
- 指向类方法错误c++11的指针数组
- Coderunner 2 -初始化列表错误- c++ 11
- C++ 分段错误:11,试图使操作员过载<<