auto
https://www.angelcode.com/angelscript/sdk/docs/manual/doc_datatypes_auto.html
Ключевое слово auto
используется для автоматического вывода типа данных компилятором. Это позволяет избежать явного указания типа переменной, делая код более читаемым и гибким.
auto A = 1; // int
auto B = 1 + 2.f; // float
auto C = 1 + 2.f + 3.d; // double
auto o = getLongObjectTypeNameById(id); // позволяет избежать избыточности для длинных имен типов
const
Ключевое слово const работает так же.
const auto A = 1; // При попытке присвоить значение переменной будет сгенерирована ошибка
Дескрипторы
Для типов, поддерживающих дескрипторы, auto
всегда будет становиться дескриптором, так как это более эффективно, чем присваивание значения. Если переменная по каким-то причинам не должна быть дескриптором, не используйте ключевое слово auto
.
auto a = getObject(); // auto имеет тип 'obj@'
auto @b = getObject(); // это все еще допустимо, если вы хотите быть более явным.
Классы
Тип auto
не может использоваться для объявления членов класса, поскольку их разрешение зависит от конструктора.
Last modified: 16 October 2024