如果我有:
int **p;
为什么我不能这样做?
p = new *int[4];
但如果我有:
class T {...}
T **c;
c = new *T[4];
是正确的吗?
答案 0 :(得分:9)
*
必须在它修改的类型名称之后:
p = new int*[4];
c = new T*[4];
答案 1 :(得分:2)
不,这不正确。
*
必须在 type-name 之后。
那应该是:
p = new int*[4];
和
c = new T*[4];
答案 2 :(得分:1)
您尝试将关键字new
与类型(int
或T
)相乘!要说你想要一个new
指向int
的指针数组:
p = new int*[4];
或指向T
的指针数组:
c = new T * [4];