is ==
IntegratedDimensions
IntegratedDimensions at gmail.com
Sat May 19 00:59:12 UTC 2018
On Friday, 18 May 2018 at 23:58:18 UTC, Uknown wrote:
> On Friday, 18 May 2018 at 23:53:12 UTC, IntegratedDimensions
> wrote:
>> Why does D complain when using == to compare with null? Is
>> there really any technical reason? if one just defines == null
>> to is null then there should be no problem. It seems like a
>> pedantic move by who ever implemented it and I'm hoping there
>> is actually a good technical reason for it.
>
> D only complains of this when you use ref types (classes or
> AAs). For e.g:
> --- test.d
> void main()
> {
> int * p;
> assert (p == null && p is null);
> class C
> {
> int x;
> }
> C c;
> assert (c is null);
> assert (c == null); //error, c is a reference, so there is
> confusion between opEquals and null check
> }
> ---
or pointers.
More information about the Digitalmars-d-learn
mailing list