首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

两个类怎么共用一个变量,不允许用全局变量

2013-10-02 
两个类如何共用一个变量,不允许用全局变量RT,不能使用全局变量,但这两个类实际可以操作一个数据全局变量类

两个类如何共用一个变量,不允许用全局变量
RT,不能使用全局变量,但这两个类实际可以操作一个数据 全局变量 类 数据 C C++
[解决办法]
类本身就是用来隐藏内部数据的,两个毫无关系的类,应该是不行的。要访问一个共同的变量,可以用继承。
[解决办法]
指针 
完毕
[解决办法]

引用:
Quote: 引用:

类本身就是用来隐藏内部数据的,两个毫无关系的类,应该是不行的。要访问一个共同的变量,可以用继承。
没有其它的方法了?

一般的做法不是如何去暴露这个变量,而是写一个变量管理类,其他类可以通过这个类来访问变量
[解决办法]
另外申明一个类N,类N里使用静态成员变量,然后你那2个类继承该类N。
[解决办法]
#include <iostream>
using namespace std;
class A
{
int* pA;
public:
void SetObj(int* p)
{
pA = p;
}
void Show()
{
cout << *pA << endl;
}
};
class B
{
int* pB;
public:
void SetObj(int* p)
{
pB = p;
}
void Show()
{
cout << *pB << endl;
}
}
int main(int argc, char *argv[])
{
int i = 40;
A a;
B b;
a.SetObj(&i);
b.SetObj(&i);
cout << i << endl;
i = 10;
a.Show();
b.Show();
return 0;
}

[解决办法]
两个对象可以同时访问一个变量,可以由其中一个对象管理该变量并将指针交给另一个对象,也可以外部管理一个变量并把指针传给这两个对象
[解决办法]
简单的事非得弄复杂了。
全局变量有什么不好么?

变量就那么几种
局部变量
全局变量
实例变量
局部变量和实例变量都用不了,不用全局变量用什么?

热点排行