In C++98, the null pointer was represented by the literal 0
(or in fact any constant expression whose value was zero). In C++11, we prefer nullptr
The = 0
notation for virtual
functions wasn't literally "assign null" but rather a special notation which is actually deceptive: a pure virtual function can also be implemented.
With various context keywords it would make more sense to allow abstract
rather than = nullptr
and have abstract
be a context keyword.