c++ - 初始化 vector 时出错

标签 c++ c++11

std::vector<int> test { 0x34 };

给出这个错误:

error expected a ';'

我正在使用支持此 C++11 功能的 VS2012。

最佳答案

您的代码在 C++11 中完全合法。我必须得出结论,您没有使用 2012 年 11 月的 CTP,在这种情况下,您的假设是:

I am using VS2012 which supports this C++11 feature.

不正确。 This Q&A on StackOverflow 阐明了 VC11 支持哪些功能。

请注意,统一初始化仅在 2012 年 11 月的 CTP 中受支持。

虽然 2012 年 11 月的 CTP 确实在编译器中引入了对 C++11 统一初始化的支持(请参阅 StackOverflow 上的这个问答以了解支持的功能的概述),但交付的标准库的实现VS2012 尚未重写以利用这些功能 (Error when initializing a vector)。

关于c++ - 初始化 vector 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17000709/

相关文章:

c++ - 通过引用调用函数(?)

c++ - 创建崩溃日志

c++ - 基础解析/模板类型推导

c++ - 使用 C++11 shared_ptr 错误的 Eclipse 多态性

c++ - 什么是默认方法以及如何正确使用它们?

c++ - 你能举个关于这一点的例子吗 : lambda-expression

c++ - 它如何使用 boost.asio.deadline_timer 在一个线程中完成 "async_wait"以外的其他工作

c++ - 找不到图像

c++ - 右值引用和构造函数

c++ - 两个 unique_ptr<T> 的无锁交换