c++ - 整数 vector 的 initializer_list 语法

标签 c++ c++11 syntax initializer-list

<分区>

为了理解如何使用 initializer_list,我正在编写自己的构造函数来填充整数 vector (解释 here):

#include <vector>

class X
{
  std::vector< int > *vec;
public:
  X(std::initializer_list<int>);
};

X(std::initializer_list<int> values)
{
  this->vec = new std::vector<int>(values);
}

线

X(std::initializer_list<int> values)

被我的 g++ -std=c++11 拒绝:值前的声明符无效。 为什么?

最佳答案

正如 Bo Persson 所注意到的:

X(std::initializer_list<int> values)

必须写

X::X(std::initializer_list<int> values)

关于c++ - 整数 vector 的 initializer_list 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23855857/

相关文章:

c++ - vector push_back a moved local var in c++11 测试和混淆

javascript - 与三点语法等效的最干净、有效的 TypeScript 是什么?

c - function_name(int * pn)和function_name(int * pn)有什么区别?

c++ - Google gRPC (C++) 在 VisualStudio 2013 下构建。链接错误

c++ - Goto 语句中的堆栈跟踪

C++ - 返回对象的函数

java - public classG<A extends X & Y & Z> 关于 Java 中的泛型

c++ - 函数模板的部分特化

c++ - XCode 4.5 'tr1/type_traits' 找不到文件

c++ - 我可以将 nullptr 转换为其他指针类型吗?