Когда вы имеете дело с функцией конструктора, имя конструктора в описании класса, это имя класса; с другой стороны, при создании экземпляра объекта, имя конструктора является именем вы хотите для нового объекта; это имя может иметь скобки, если класс был функцию конструктора; если класс не имеет конструктора функции, это имя не будет иметь скобки. Конструктор Функция без скобок В образце кода выше конструктор, функция-конструктор имеет параметры (аргументы). Вы можете иметь функцию конструктора без параметров.
В этом случае значения, приведенные к свойствам будет стоимость недвижимости класса по умолчанию. Следующий код иллюстрирует это: #include, используя патезрасе; класс Калькулятор {общественности: INT num1; INT пит2; Калькулятор () {num1 = 11; пит2 = 12; } INT Add () {INT сумма = num1 + пит2; вернуться сумму; }}; INT Main () {Калькулятор MyObject; INT результат = myObject.add (); COUT вернуть 0; } Прочитайте код и обратите внимание, что функция-конструктор не имеет параметров. Тем не менее, в функции свойства были инициализированы до 11 и 12.
Теперь, что функция-конструктор не имеет параметров, на экземпляра (первой линии главной функции выше), вызов функции конструктора (MyObject) не должны иметь скобки. Определение Метод пределами класса Описание Вы можете определить методы класса за пределами описании класса. В таком описании класса, вы будете иметь только метод прототипов (деклараций).
Следующий код иллюстрирует это: #include, используя патезрасе; класс Калькулятор {общественности: INT num1; INT пит2; Калькулятор () {num1 = 11; пит2 = 12; } Int добавить (); }; INT калькулятор :: Add () {INT сумма = num1 + пит2; вернуться сумму; } INT Main () {Калькулятор MyObject; INT результат = myObject.add (); COUT вернуть 0; } Прочитайте код, если вы еще этого не сделали. Объявление метода заканчивая точкой с запятой является метод прототип. Примечание к методу Add () прототип в описании класса. Определение методом Add () находится за пределами описания класса.
Синтаксис определенной методом внешнего описания класса является: ReturnValue ИмяКласса :: conventionalDefinition По conventionalDefinition здесь, вы начинаете с объявления