>> Написать так можно (разве что NULL большими буквами)
> о! а передать его потом в функцию, принимающую MyClass& - можно?
Можно. Через разименование. Но такие вещи уже в принципе не ловятся at compile time -- в одном месте запихать в переменную условно некорректное значение, а в другом его использовать ;-)
> всегда? а если это не локальная переменная, а член класса? а если static член?
Ну, если static -- будет NULL. Но это редкий случай ;-)
ну вот видишь. то есть в процессе нормального использования.
Но такие вещи уже в принципе не ловятся at compile time
ну как же. типизованный же пойнтер. вводится специальный модификатор типа, который будет запрещать нулевые и неинициализированные пойнтеры, и все дела. ты сходи по сслыке-то.
запихать в переменную условно некорректное значение
именно. если у тебя по семантике для этого пойнтерного типа null - это некорректное значение, то это надо явно объявить. пусть компилятор ошибки ловит.
(no subject)
Date: 2004-06-07 01:03 pm (UTC)>> Написать так можно (разве что NULL большими буквами)
> о! а передать его потом в функцию, принимающую MyClass& - можно?
Можно. Через разименование. Но такие вещи уже в принципе не ловятся at compile time -- в одном месте запихать в переменную условно некорректное значение, а в другом его использовать ;-)
> всегда? а если это не локальная переменная, а член класса? а если static член?
Ну, если static -- будет NULL. Но это редкий случай ;-)
(no subject)
Date: 2004-06-07 02:11 pm (UTC)ну вот видишь. то есть в процессе нормального использования.
Но такие вещи уже в принципе не ловятся at compile time
ну как же. типизованный же пойнтер. вводится специальный модификатор типа, который будет запрещать нулевые и неинициализированные пойнтеры, и все дела. ты сходи по сслыке-то.
запихать в переменную условно некорректное значение
именно. если у тебя по семантике для этого пойнтерного типа null - это некорректное значение, то это надо явно объявить. пусть компилятор ошибки ловит.