|
|
|
|
|
by NovemberWhiskey
88 days ago
|
|
The real world is full of relationships that may or may not exist. What’s the referent of “my spouse” if I’m unmarried? Is your point here that every pointer type for which this can be the case should include an explicitly typed null value? |
|
* It's the same referent as all the other things you don't have. Your struct has a Spouse, why does it not also have a RivieraChateau, a SantaClaus, BankAccountInSwissFrancs. If you can answer why you left those out, you know why to leave out Spouse.
* Why stick to 0-1 Spouses. As soon as you do that you're gonna need n Spouses, where some of them will have an ex- flag set, married from&to timestamps.
> Is your point here that every pointer type for which this can be the case should include an explicitly typed null value?
* It shouldn't make a difference whether it's a pointer or a reference or a value or a class. If you believe null is one of the Integers, you should also believe that null is one of the ints. Why should your domain change to accommodate C idioms.