Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ С\С++ _ Вызов функции класса без инициализации класса.

Автор: Trisch 2.12.2014, 12:57

В Qt некоторые функции класса можно вызывать без инициализации самого класса.
К примеру:

QDate::currentDate();


Вот как такую возможность реализовать в своих классах?
Если предположение, что это реализовано с помощью static (В принципе, функция currentDate() и определена как static). Но я с статическими функциями сталкивался редко, вот поэтому, хочу уточнить.

Автор: Iron Bug 2.12.2014, 13:10

это обычные статические функции класса.

Автор: Trisch 2.12.2014, 13:16

Цитата(Iron Bug @ 2.12.2014, 14:10) *
это обычные статические функции класса.


да, я уже это понял)

А вот можно сделать так, чтобы при вызове некой функции и вызывался бы конструктор?

Автор: ahalaj 3.12.2014, 9:29

Цитата(Trisch @ 2.12.2014, 13:16) *
Цитата(Iron Bug @ 2.12.2014, 14:10) *
это обычные статические функции класса.


да, я уже это понял)

А вот можно сделать так, чтобы при вызове некой функции и вызывался бы конструктор?

Не совсем понял, но посмотри на стандартный паттерн под названием https://ru.wikipedia.org/wiki/%D0%9E%D0%B4%D0%B8%D0%BD%D0%BE%D1%87%D0%BA%D0%B0_%28%D1%88%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD_%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F%29#.D0.9F.D1.80.D0.B8.D0.BC.D0.B5.D1.80_.D0.BD.D0.B0_C.2B.2B.

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)