我正在尝试创建一个指针数组.这些指针将指向我创建的Student对象.我该怎么做?我现在拥有的是:
Student * db = new Student[5];
但是该数组中的每个元素都是学生对象,而不是指向学生对象的指针.谢谢.
Student** db = new Student*[5]; // To allocate it statically: Student* db[5];
#includestd::vector db(5); // in use db[2] = & someStudent;
这样做的好处是您不必担心删除已分配的存储 - 向量会为您执行此操作.
指针数组被写为指针指针:
Student **db = new Student*[5];
现在的问题是,你只为五个指针保留了内存.因此,您必须遍历它们以自己创建Student对象.
在C++中,对于大多数用例,使用std :: vector生活更容易.
std::vectordb;
现在你可以使用push_back()来添加新的指针,并使用[]来索引它.使用比**更清洁.