2009-06-26 4 views
10

Я знаю, что в Delphi переменные экземпляра и глобальные переменные инициализируются нулем (это было asked here before).Инициализируются ли классы var с нулем?

Однако, что относительно статических переменных (class var)? Я бы ожидал класс vars для инициализации до нуля, как и глобальные переменные. Но я видел слишком много новых функций компилятора Delphi, которые все еще были наполовину испечены, чтобы предположить, что он работает, без документации, которая фактически заявляет о гарантии.

Справка не содержит индексной записи для «class var». В разделе «Поля» упоминаются поля классов, но не указывается, инициализируются ли они при запуске программы. И явное исправление, явно инициализирующее их (class var X: Integer = 0;), не компилируется («';' expected, но '=' found ').

Являются ли переменные класса инициализированы нулем? Есть ли документация, в которой это явно указано?

ответ

6

Я не знаю какой-либо документации, которая явно заявляет об этом, но классовые классы являются просто особым типом глобальной переменной, а глобальные значения обнуляются.

Смежные вопросы