我有Cars
类和对象(指向数字指针的指针):
Cars** arr;
我想分配一个新的内存,我该怎么办?
就像是:
arr = new Cars*[1]; // make one row
arr[0] = new Cars[10]; // make 10 cols
for (int i = 0; i < 10; ++i) {
arr[0][i] = d; // d is a parameter of: Digits d;
}
我将行设置为1,因为我认为总是有1行。
请帮我,因为我想我错过了一些..
最佳答案
arr = new Cars*[1]; // make one row
arr[0] = new Cars[10]; // make 10 cols
for (int i = 0; i < 10; ++i) {
arr[0][i] = d; // d must be an object of Cars
}
由于
arr
存储Cars
类型的元素,因此d
必须是object
的Cars
或可以转换为/视为Cars
的对象。您最好改用vector的vector,因为它更易于使用,并且您不必为动态数组而烦恼内存管理问题。