这里DynamicArray是一个动态数组模板类。它的构造函数带有1个int参数。但是,此指针实际上是做什么的?它创建了一个指向地址的指针q,但是构造函数实际上是否实例化了一些未命名的垃圾对象?

   DynamicArray<int>       x(12);
    DynamicArray<double>   *q;


q指针创建什么?

最佳答案

该指针什么也不创建。它是指针的定义,可用于指向DynamicArray<double>类型的对象。例如

DynamicArray<double>       x(12);
DynamicArray<double>   *q;

q = &x;


考虑到原始代码段中的DynamicArray<int>DynamicArray<double>是两种不同的类型。你可能不写例如

DynamicArray<int>       x(12);
DynamicArray<double>   *q;

q = &x;

关于c++ - 指向该对象的指针会创建什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25275103/

10-11 23:12