История изменений
Исправление AntonI, (текущая версия) :
Вообще то вызывается new, который аллоцирует память и вызывает конструктор. То, что другие функции не относящиеся к классу могут new вызывать (если конструктор открыт) Вас не смущает?:-)
Статическая функция фактически внешняя для класса ф-я (у нее нет this), но она размещена в пространстве имен класса и имеет доступ к приватным членам (если дать ей указатель на экземпляр класса). New такой указатель как раз даёт.
Исходная версия AntonI, :
Вообще то вызывается new, который аллоцирует память и вызывает конструктор. То, что другие функции не относящиеся к классу могут new вызывать (если конструктор открыт) Вас не смущает?:-)
Статическая функция фактически внешняя для класса ф-я (у нее нет this), но она размещена в пространстве имен класса и имеет доступ у приватным членам (дать ей указатель на экземпляр класса). New такой указатель как раз даёт.