我有点困惑.我能找到的最好的东西是阅读cplusplus.com教程,他们不得不说出关于类的指针.
"创建指向类的指针是完全有效的.我们只需要考虑一旦声明,类就成为有效类型,所以我们可以使用类名作为指针的类型"
这告诉我什么时候在正常的实例化中使用它们.我已经多次看过 - >运算符,并查看了一些代码,但无法解释为什么会这样做.
通用的例子将不胜感激; 但更具体地说与gui编程有关.它是我第一次遇到它的地方.
QGridLayout *mainLayout = new QGridLayout;
mainLayout->addWidget(nameLabel, 0, 0);
mainLayout->addWidget(nameLine, 0, 1);
mainLayout->addWidget(addressLabel, 1, 0, Qt::AlignTop);
mainLayout->addWidget(addressText, 1, 1);
Run Code Online (Sandbox Code Playgroud)
为什么不
QGridLayout mainLayout
mainLayout.addWidget
...
Run Code Online (Sandbox Code Playgroud)
(如果我将示例代码更改为并且尝试了但是你得到了重点,它就不会编译)
提前致谢
tem*_*def 11
考虑何时进行堆栈分配(非指针)与堆分配(指针)对象的好方法是考虑您希望该对象存活多长时间.如果将对象作为局部变量放在堆栈上,则它将被清除并在函数返回后立即停止存在.如果您希望该对象比创建它的函数调用更长,请将其放在堆上.
以网格布局为例,我相信指针版本更合适,因为在创建布局返回的函数调用之后,您仍然希望布局四处.否则,只有函数运行时,布局才会存在.