gpt4 book ai didi

constructor - 为什么构造函数不返回值?

转载 作者:行者123 更新时间:2023-12-03 05:12:27 25 4
gpt4 key购买 nike

请告诉我为什么构造函数不返回任何值。我想要一个完美的技术理由来向我的学生解释为什么构造函数没有任何返回类型。

最佳答案

构造函数实际发生的情况是,运行时使用编译器生成的类型数据来确定在内存中存储对象实例需要多少空间,无论是在堆栈上还是在堆上。

这个空间包括所有成员变量和vtbl。分配此空间后,将调用构造函数作为实例化和初始化过程的内部部分来初始化字段的内容。

然后,当构造函数退出时,运行时返回新创建的实例。因此构造函数不返回值的原因是因为它不是由代码直接调用,而是由运行时的内存分配和对象初始化代码调用。

它的返回值(如果它在编译为机器代码时实际上有一个)对用户来说是不透明的 - 因此,您无法指定它。

关于constructor - 为什么构造函数不返回值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1788312/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com