如何在另一个类中使用变量值

时间:2017-04-11 18:48:53

标签: c++ class

想象一下,我有一个类,它有一个私有值,例如这个值名称是 a ,然后我将它的值设置为10.

如何访问 此变量其值(10)在另一个类中?

(我不想使用好友功能和朋友类)

A.H

#include <iostream>
using namespace std;
static int s=0;

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

class a
{
    private:
    public:
        void sets(int );
};

a.cpp

#include "a.h"

void a::sets(int y){
    cin >> y;
    s=y;
}

的main.cpp

#include"a.h"

int main()
{
    int i=0;
    int q;
    a a1;
    a1.sets(q);
    cout << s+1 << endl;
    for (i=1; i<5; i++){
        if (s == i) cout << "ok";
    }
}

3 个答案:

答案 0 :(得分:0)

如果您不想使用friend发货,请为此变量添加公共接口(setter和/或getter类成员)。

答案 1 :(得分:0)

创建变量public或添加函数以获取返回它的值,例如int getA() const { return a; }

答案 2 :(得分:0)

在班级s中使用私人会员a而非全局变量,并通过公开的Getter函数GetS

访问它

示例:

#include <iostream>
using namespace std;

class a
{
    private:
        int s;

    public:
        void SetS() { cin >> s; }
        int GetS() const { return s; } 
};

int main()
{
    a a1;
    a1.SetS();
    int s1=a1.GetS();
    cout << s1+1 << endl;
    for (int i=1; i<5; i++){
            if (s1 == i) cout << "ok";
    }
}