C++ 类构造函数调用次数分析:X a(4), b[5], *p1, *p2=new X
假设 X 为一个类,执行 'X a(4), b[5], *p1, *p2=new X' 触发该类构造函数的执行次数有 6 次。
解析:
-
执行 'X a(4)',会构造一个名为 a 的 X 类型对象,构造函数会被执行 1 次。
-
执行 'X b[5]',会构造一个名为 b 的 X 类型数组,数组中有 5 个元素,因此构造函数会被执行 5 次。
-
执行 '*p1',会构造一个名为 p1 的 X 类型指针,但不会调用构造函数。
-
执行 '*p2=new X',会构造一个名为 *p2 的 X 类型对象,构造函数会被执行 1 次。
因此,该类构造函数会被执行 6 次。
原文地址: https://www.cveoy.top/t/topic/nI5T 著作权归作者所有。请勿转载和采集!