2013-02-15 3 views
0

Я просто читал одну статью и пришел через код нижепутать с созданием объекта

int var = int(); 

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

ответ

3

Этот синтаксис также value-initializes переменная. Это эквивалентно написанию int var = 0;.

Простой int var; не сделал бы этого (в большинстве контекстов) - это оставило бы переменную неинициализированной.

new динамически выделяет объект и должен использоваться только тогда, когда это действительно необходимо.

+0

поэтому его инициализация времени компиляции только вправо? – Kenta

+0

Отвечено 1 мин. Назад, ответил 55 секунд назад ?? – nurettin

+0

@Learner в основном, да. –

0

Эта строка кода позволяет избежать получения предупреждений типа «Значение не инициировано» или получения значений по умолчанию NULL. Это походит на то, чтобы дать вам уверенность, что вы не работаете над vaiable, которого нет вообще.

+0

Um, «Значение не инициализировано» не является ошибкой. Это юридический код, а иногда и полезный. Если ваш компилятор предупреждает вас об этом, и вы считаете это полезным, отлично. –

+0

Да, это важно при отладке, я должен был предупредить –

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