首页 > 解决方案 > 两个类成员可以在同一个函数中使用吗?(类和对象)(C++)

问题描述

我是编程新手,我从 C++ 开始。在这一点上,我正在试验类和对象。

我的问题是我无法得到我想要的正确结果。

这是我的代码:

#include <iostream>
using namespace std;

class Variable
{
public:
    int classAnum;
    int classBnum;
    void sumVar(){
        cout << classAnum + classBnum <<endl;
    }
};

int main()
{
    Variable numA;
    Variable numB;
    cout << "Enter a number: ";
    cin >> numA.classAnum;
    cout << "Enter another number: ";
    cin >> numB.classBnum;
    numA,numB.sumVar();
    return 0;
}

我得到的输出是:

Enter a number: (any number)
Enrer another number: (any number)
1955294086

我输入任何数字都会得到这个输出。

但如果我使用这段代码:

#include <iostream>
using namespace std;

class Variable
{
public:
    int classAnum;
    int classBnum;
    void sumVar(){
        cout << classAnum + classBnum <<endl;
    }
};

int main()
{
    Variable numA;
    Variable numB;
    cout << "Enter a number: ";
    cin >> numA.classAnum;
    cout << "Enter another number: ";
    cin >> numB.classBnum;
    cout << numA.classAnum + numB.classBnum;
    return 0;
}

我得到一个正确的结果。如果我能够在同一个函数中使用两个对象,有人可以解释一下吗?如果可以,应该怎么做?

标签: c++classobject

解决方案


如果你想在Variable类实例中输入两个数字,然后调用函数sumVar()来打印两个数字的总和,你可以这样做:

#include <iostream>
using namespace std;

class Variable
{
public:
    int classAnum;
    int classBnum;
    void sumVar(){
        cout << classAnum + classBnum <<endl;
    }
};

int main()
{
    Variable num;
    cout << "Enter a number: ";
    cin >> num.classAnum;
    cout << "Enter another number: ";
    cin >> num.classBnum;
    num.sumVar();
    return 0;
}

推荐阅读