钻石继承:一份身份,还是两份?

调整三处初始化值,再切换继承方式。结构图只表达“同一子对象或不同子对象”的概念关系,不代表真实内存地址。

初始化输入

非虚继承中,两条中间路径各自负责初始化自己的 Identity
连线 = 概念上的基类路径
Identity 数量2 份
两条路径地址关系概念上不同
Session → Identity*歧义,不能直接转换
最终 idCached: 11 / Audited: 22

          

两条路径产生两份基类子对象