[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: NULL и g++



On Tue, Sep 26, 2000 at 09:49:24AM +0500, Vlad Harchev wrote:
>  Никак оно не должно быть. NULL - просто широко используемый макрос с типом
> указатель на void и значением 0. Можно вместо NULL писать ((void*)0) если так
  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

 Для C++ это не совсем так. Вот что говорит ISO C++ 18.1:

"...
4- The macro NULL is an implementation-defined C++ null pointer constant in
this International Standard (conv.ptr).* 

     [Footnote: Possible definitions include 0 and 0L, but not (void*)0. ---
end footnote]
..."

У g++ cstddef берет системный stddef.h, который, например, у меня на Соляре
имеет следующее определение:

#ifndef NULL
#define NULL    0
#endif

Так что взгляни в свой /usr/include/stddef.h, держу пари, что ничего
переопределять не придется.

--cdi

P.S. А $subj$ здесь не офф-топик часом? ;)



Reply to: