已删除 'simple_vector::simple_vector(int)' 的定义
Deleted definition of 'simple_vector::simple_vector(int)'
我正在使用动态数组在 C++ 中创建一个简单的向量 class。必须删除带有 int
参数的构造函数。
我有两个错误:
已从我的 cpp 文件中删除 simple_vector::simple_vector(int)
的定义。
我的 hpp 文件中 simple_vector::simple_vector(int)
的先前声明。
这是怎么回事?我的 class 的名字是 simple_vector
。它只能包含 double
个元素。
老实说,我不知道该怎么办。
Hpp 文件
simple_vector(const int a);
Cpp 文件
simple_vector::simple_vector(const int a) = delete;
您不能在 cpp
文件的 定义 上将您的构造函数标记为 delete
,您需要在其 声明改为在hpp
文件中。
在 hpp
文件中,更改为:
simple_vector(const int a);
为此:
simple_vector(const int) = delete;
并在 cpp
文件中,将其完全删除:
simple_vector::simple_vector(const int a) = delete;
我正在使用动态数组在 C++ 中创建一个简单的向量 class。必须删除带有 int
参数的构造函数。
我有两个错误:
已从我的 cpp 文件中删除
simple_vector::simple_vector(int)
的定义。我的 hpp 文件中
simple_vector::simple_vector(int)
的先前声明。
这是怎么回事?我的 class 的名字是 simple_vector
。它只能包含 double
个元素。
老实说,我不知道该怎么办。
Hpp 文件
simple_vector(const int a);
Cpp 文件
simple_vector::simple_vector(const int a) = delete;
您不能在 cpp
文件的 定义 上将您的构造函数标记为 delete
,您需要在其 声明改为在hpp
文件中。
在 hpp
文件中,更改为:
simple_vector(const int a);
为此:
simple_vector(const int) = delete;
并在 cpp
文件中,将其完全删除:
simple_vector::simple_vector(const int a) = delete;