C++ 方法/构造函数及其返回值

C++ 方法/构造函数及其返回值,c++,class,object,constructor,return-value,C++,Class,Object,Constructor,Return Value,我是编程新手,我们刚刚开始学习“课程”。我将向您展示我在互联网上找到的一个示例代码。我的问题是-add和res是构造函数吗?构造函数如何返回值“X res和X add”不是int类型的方法,它仍然返回一个值(res也没有变量),所以我真的很困惑。。我在stackoverflow的几篇文章中看到,构造函数不能返回值,那么什么是“X res和X add” #include <iostream> using namespace std; class X { int a;

我是编程新手,我们刚刚开始学习“课程”。我将向您展示我在互联网上找到的一个示例代码。我的问题是-add和res是构造函数吗?构造函数如何返回值“X res和X add”不是int类型的方法,它仍然返回一个值(res也没有变量),所以我真的很困惑。。我在stackoverflow的几篇文章中看到,构造函数不能返回值,那么什么是“X res和X add”

#include <iostream>
using namespace std;

class X {
    int a;
    int b;

public:
    X (int a=7, int b=6) {
        this->a = a;
        this->b = b;
    }

    void print() {
        cout << a << b;
    }

    X add() {
        X res(a+b, a-b);
        return res;
    }

};

int main() {
    X x;
    x.add().print();
    return 0;
}
#包括
使用名称空间std;
X类{
INTA;
int b;
公众:
X(整数a=7,整数b=6){
这->a=a;
这->b=b;
}
作废打印(){
库特
是“add”和“res”构造函数,构造函数如何返回值

No
add()
是一个“普通”类成员函数,它返回一个名为
res
的新
X
实例,该实例是使用
X(int,int)
构造函数初始化的

是“add”和“res”构造函数吗

否。
add()
是类
X
的成员函数,返回
X
res
add()
中的局部变量,类型为
X

构造函数不能返回值

是的,没错

类构造函数是 每当我们创建该类的新对象时执行

构造函数将与类具有完全相同的名称,但它没有 有任何返回类型,甚至没有void。构造函数可能非常有用 用于设置某些成员变量的初始值

所以
add
print
不是构造函数。只是
X(inta=7,intb=6){
这->a=a;
这->b=b;
}
是构造函数

什么是“X恢复和X添加”


X res是指res是类X的一个对象;add是类X的一个成员函数的名称,它可以返回类X的一个对象。

我想我得到了它..最后我猜答案类似于-
X.print();
其中
X
包含值13和1以及
print()
方法我们只是打印出来?