без new объекты создаются на стеке и уничтожаются как только объект выходит из зоны видимости (стек убивается).зона видимости ограничена фугурными скопками (да поправят меня строгие форумчане), это: функции, классы, циклы и т.п. вы можете просто создать фигурные скопки и туда код писать, не обязательно, чтобы они относились к какому-нибудь оператору / функции.например, вы создали без new в функции и после того как функция выполнится, то все объекты в ней убиваются[code=cpp]void foo() { QWidget w; w.show(); // w живет и видим пока функция выполняется}
C++ (Qt)void foo() {... QDialog w; w.exec(); // пока диалог открыт, дальше этой строки не выполняется код...}
C++ (Qt)void foo { QString s = "Hello"; qDebug() << s;}
C++ (Qt)void foo { QString * s = new QString("Hello"); qDebug() << s; delete s;}
C++ (Qt) class Widget : public QWidget{...private: QLabel m_label; QLineEdit m_lineEdit;}
C++ (Qt)class CBad : public QWidget {public: CBad( void ) : m_lab("Lab", &m_widget) { } public: QLabel m_lab; QWidget m_widget;};
C++ (Qt)struct A{int a;int b;A() : a(b), b(10) {std::cout << a << " " << b << std::endl;}};............/a.out0 10[/code!
class CBad2 : public QWidget {public: CBad2( void ) : m_lab("Lab") { m_lab.setParent(&m_widget); } public: QLabel m_lab; QWidget m_widget;};