在一行中声明并初始化指向类实例的指针

时间:2016-06-19 00:30:46

标签: c++

假设我有一个班级MyClass(int i),我知道我可以这样做:

int j = 1;
MyClass instance(j);

即。在一行中声明并初始化instance。是否有语法允许对指向MyClass的指针执行相同的操作?

MyClass *instance = new MyClass(j);

有效,但语法有两次“MyClass”,这有点多余。

2 个答案:

答案 0 :(得分:2)

MyClass *instance = new MyClass(j);
     

有效,但语法有两次“MyClass”,这有点   多余的。

怎么样:

 auto instance = new MyClass(j);

但是你为什么要在堆上分配呢?见Object creation on the stack/heap?Proper stack and heap usage in C++?

答案 1 :(得分:0)

<强> 没有

你应该按照你的说法去做。