struct CLS{ int m_i; CLS(int i):m_i(i){} CLS(){CLS(0)} } CLS obj; cout << obj.m_i << endl;
结果并不是0,因为在默认构造函数内部再调用带参数的构造函数是用户行为而非编译器行为,只执行函数调用,不会执行初始表达式。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步