This is unused outside of tests and the default constructor. With C++11, it can be replaced by C++11 member initializers in the default constructor.
Beside removing unused code, this also makes it less fragile in light of uninitialized memory. (See also #26296 (comment))
If new code needs to set this to null, it can use std::optional, or in the worst case re-introduce this method.