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

Re: NULL и g++



Влад, согласен я с жабой спутал.
Но в (void*)0 между С и С++ есть большая разница.
В стандарте C++ написано, что NULL может быть как 0 так и 0L, но ни в коем
случае не ((void*)0) иначе обещаются косяки при приведении (void*) к
(class*).  


On Tue, 26 Sep 2000, Vlad Harchev wrote:

> On Tue, 26 Sep 2000, Alexander Kotelnikov wrote:
> 
>  Hi, 
> 
> > Hi.
> > 
> > Я хочу, чтобы в моей C++ программе NULL'ом был не (void*)0 и не __null,
> > а просто int 0, как оно и дожно быть в плюсах, насколько я понимаю. 
> 
>  Никак оно не должно быть. NULL - просто широко используемый макрос с типом
> указатель на void и значением 0. Можно вместо NULL писать ((void*)0) если так
> удобнее.
> 
> > Безопасно ли сделать что-нибудь типа
> > # ifdef NULL
> > #   undef NULL
> > # endif
> > # define NULL (0)
> > 
> > или
> > const int NULL=0;
> 
>  Для чего? Чтобы нулевые указатели при выводе в поток как строки говили 0 а не
> "(null)" ? Таким образом не получится.
> 
>  Короче, я не вижу никакой пользы от такой подмены (но работать будет, может
> преджупрежедений будет больше).
>  
> > и потом вызывать C функции?
> > 
> > Спасибо,
> > -- 
> > Alexander Kotelnikov
> > Saint-Petersburg, Russia
> > 
> > 
> > --  
> > To UNSUBSCRIBE, email to debian-russian-request@lists.debian.org
> > with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
> > 
> 
>  Best regards,
>   -Vlad
> 
> 
> --
> To UNSUBSCRIBE, email to debian-russian-request@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
> 
> 

	Николай <nick@nick.da.ru>



Reply to: