Можно использовать синтаксис С для определений функций: старое-определение-функции: спецификации-описаний opt старый-описатель-функции список-описаний opt тело-функции старый-описатель-функции: описатель (список-параметров opt) список-параметров: идентификатор список-параметров, идентификатор Приведем пример: max(a,b) int b; { return (a<b)? b: a; } Если определенная таким образом функция не была описана ранее, то тип ее формальных параметров полагается (...), т.е. он не будет проверяться. Если она была описана, то тип должен согласовываться с типом, указанным в описании. Приведенный синтаксис нельзя использовать для определения функций-членов. R.18.3.2 Старый стиль задания инициализатора базового класса В конструкции инициализатор-памяти ($$R.12.6.2) можно не указыватьимя-класса, обозначающее базовый класс при условии, что существуеттолько один прямой (непосредственный) базовый класс. Поэтому вописании class B { //... public: B(int); }; class D: public B { //... D(int i): (i) { /*... */ } }; будет вызываться конструктор B с параметром i. R.18.3.3 Присваивание указателю this Присваивая определенные значения указателю this, пользователь мог управлять выделением памяти для объекта некоторого класса. В конструкторе до использования членов класса можно было с помощью такого присваивания реализовать свой алгоритм выделения памяти. Присваивая в деструкторе указателю this нуль, можно было обойти стандартную операцию освобождения объектов класса. Кроме того, присваивание нуля в деструкторе отменяло неявные вызовы деструкторов для членов и базовых классов, например: class Z { int z[10]; Z() { this = my_allocator(sizeof(Z)); } ~Z() { my_deallocator (this); this = 0; } }; Если выделение памяти уже произошло (как бывает для членов иобъектов auto или static), то при входе в конструктор this имеетненулевое значение и значение нуль в противном случае. Вызовы конструкторов для членов и базовых классов произойдуттолько после того, как this получил значение. Если в конструкторебазового класса есть присваивание this, то новое значение thisбудет использоваться и в конструкторах производных классов, еслиони есть. Отметим, что при наличии указанного анахронизма или тип указателяthis не может быть *const, или нужно делать исключение для this изправила о присваивании указателям со спецификацией const.