Dakons blog

Erstellt: 22. 12. 2008, 19:58
Geändert: 22. 12. 2008, 20:14

Bug des Tages: NULL vs. 0

Tags:

Unter C++ hat es sich eingebürgert, statt dem in C eigentlich üblichen NULL nur 0 zu schreiben, um einen Pointer zu kennzeichnen, der nirgendwohin zeigt. Dumm ist das man damit auch bei folgenden Flüchtigkeitsfehhlern keine Warnung mehr bekommt, da 0 und NULL als gleich angesehen werden:

T *operator[](const unsigned int &i)
{
	T *res = at(i);
	if (i == NULL)
		throw std::out_of_range("bad array index");
	return res;
}

Gemeint war natürlich:

if (res == NULL)
Anbieterkennzeichnung