C++ 说我们不能从构造函数返回任何东西?其背后的历史原因是什么? 为什么 Bjarne 不允许构造函数返回不同于任何其他成员函数的东西?
最佳答案
因为在 new
语句或变量初始值设定项中构造对象时,返回的对象是正在构造的新对象。您会如何处理从构造函数返回的对象?它永远无法返回任何地方;返回的是正在构造的对象。在调用构造函数之前已经(部分)创建了该对象(否则,构造函数将没有可处理的对象),并且它必须是从构造函数返回的对象,因此没有必要让用户返回它或让他们通过尝试返回不同的东西来混淆自己。
关于c++ - 为什么我们不能从构造函数返回任何东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5757213/