AngelScript Help

Конструктор по умолчанию

Если не объявлен ни один конструктор, то при компиляции будет создан конструктор по умолчанию.

class A { // Конструктор по умолчанию будет создан при компиляции } class B { // Явное объявление конструктора по умолчанию B(){ print("Вызван конструктор по умолчанию"); } } void [[[main|main.html]]](){ A a; B b; }

Конструктор по умолчанию полезен для присвоения значений полям в зависимости от условий:

int i = 23; // [[[Глобальная переменная|var.html#global]]], значение которой всячески меняется по ходу игры class A { string a; A(){ a = i % 2 == 0 ? "чётное" : "нечётное"; } } void [[[main|main.html]]](){ A a; print(a.a); // нечётное }

delete

Если вам не нужен конструктор по умолчанию, его можно явно удалить используя ключевое слово delete и перегрузку конструктора.

class A { string s; A() delete; // Удаляем конструктор по умолчанию A(string s){ [[[this|this.html]]].s = s; } } void [[[main|main.html]]](){ A a("a"); print(a.s); // a }
Last modified: 16 October 2024