如何使用指针用对象填充矢量
how to fill a vector with objects using pointers
我有一个作业,我必须创建一个向量并用对象填充它。我找到了这个代码:
Vehicle * v = NULL;
vector<Vehicle*> *highway;
highway = new vector<Vehicle*>;
我理解第一行,它创建了一个名为 v
的指针,该指针为空并指向对象Vehicle
。
您能否向我解释其他 2 行的工作原理以及为什么在创建向量时使用指针?
以下是逐行的简要说明:
Vehicle * v = NULL;
定义类型为 Vehicle
的指针v
并将其初始化为 NULL
。
vector<Vehicle*> *highway;
定义类型为 vector<Vehicle*>
的指针highway
。
highway = new vector<Vehicle*>;
动态分配vector<Vehicle*>
并将其分配给向量highway
。
看看 std::vector,确保你明白为什么最后两行没有多大意义。
现在,回答这个问题:
如何使用指针用对象填充向量?
要填充动态分配的向量,您可以编写:
highway->push_back(Vehicle_Element);
第一行:创建类型为"车辆"的指针。它不指向对象,因为它是 NULL。它什么也没指向。您必须创建一个对象,例如:
Vehicle* v = new Vehicle;
第二行:与第一行相同的结构:创建类型为"vector"的指针。现在它没有指向任何地方。如果您创建(参见第三行)它,则您有一个指向矢量的指针,该矢量具有指向车辆对象的指针。
第三行:使用此行创建矢量指针。
相关文章:
- 使用动态实例化的对象填充矢量的快速方法
- C++ - 对象填充的复杂性
- 哪些值存储在对齐的结构/类对象的填充字节中
- 如何使用数据成员填充派生类的对象到基类的指针数组中
- 在运行时 c++ 更改用类对象填充的数组的大小
- 用于填充 Base 和派生对象的 shared_ptr 向量的函数模板
- 如何在文本文件中逐行读取并填充指向对象数组的指针
- 填充不同对象的矢量
- C++填充一个std::map创建不必要的对象
- 提升:创建对象并用线程填充矢量
- 使用相同的数据填充数组对象或使用指针
- 填充对象的C++二维数组
- 从文件填充对象的向量
- 如何在创建后正确填充对象而不修改类声明
- C++编译器内存填充:对象是否应该具有相同的大小
- C++ 使用用户输入填充对象向量
- 如何在c++中填充对象指针数组
- Cairo:重新填充对象(圆)并删除它
- 用于动态填充对象并在返回时销毁的c++习语
- 在循环中填充C++对象字段会导致空字段