简单的c++矢量/指针错误
Simple C++ vector/pointer gaffe
这确实很简单。我已经离开c++好几年了,所以我需要一些帮助来弄清楚为什么这个不能编译。
我有一个叫做'PointList'的类。在头文件中,我有以下内容:
public:
PointList();
private:
std::vector< Point* > *pl;
在.cpp文件中,我有以下内容:
PointList::PointList()
{
pl = new vector< Point* >();
}
不能编译。
在'vector'之前指定类型
无法将赋值中的'int*'转换为'std::vector <*'
给了什么?
您是否使用using
声明?如果没有,则需要在cpp文件
namespace std::
作为vector
的前缀。您需要命名空间限定vector:
PointList::PointList()
{
pl = new std::vector< Point* >();
}
并且,不要在c++中滥用指针。成员pl
很可能不需要是指针。
如果你需要多态类型的集合(向量,列表等),看看Boost。PointerContainer
相关文章:
- 为什么我在空指针错误(链表)中获取成员访问权限
- std::函数指针错误:无法将 &A::a 转换为类型 std::function<>&&
- 为什么我得到 munmap_chunk():无效的指针:错误
- 成员模板函数指针错误
- 删除指针时,未分配被释放的 C++ 指针错误
- Visual Studio 中的"指向引用的指针"错误不会按发生位置的文件名显示
- C++数组指针错误无法将“int*”转换为“int**”
- C++ 通过函数指针错误调用成员函数
- 从 BST 中删除元素(指针错误)
- 随机生成的多维布尔指针错误
- 在测试中使用unique_ptr时指针错误无效
- 使用 malloc 而不是 new 会导致 free():指针错误无效
- 非标准语法;使用 '&' 创建指向成员的指针错误,将成员函数分配给向量时出错
- 抽象类和唯一指针 c++ 错误
- 返回函数指针错误而不带类型定义
- 练习中出现空指针错误
- 指针错误导致的分段错误(简单..)
- free():C++中的指针错误无效
- 使用布尔值数组"表达式必须具有指向对象类型的指针"错误C++
- 指针错误的C 数组