1 C++杜绝
全局变量。
2 C++也不建议把成员变量设置为public。(而且简单的pubic设置和全局化也没有任何关联,估计你想要的是static的public变量)
不知道你为什么会有这类问题,C++看待角度应该和C有截然不同的视角,不要用C的想法去套C++。
我无法估计你要什么,我只能估计给个建议:
1 如果你需要全局访问的对象(注意,尽可能不用变量来描述),可以参考使用
单例模式的类设计。
2 最好的方法,还是将需要全局访问的内容转换为非全局访问。
3 上面两个之间的
权衡没有绝对标准,一般以2为主导,1的方法只适合横向切入系统的类设计,例如日志类、配置类等。(其实,也可以进行非全局融入)
如果你愿意,可以把你的具体问题罗列一下,我给点建议。
追问是这样的,我在写一个摄像机拍图存图图像处理有关的程序。
有很多类似char imgname[100]; FILE *pFile1; 的全局变量,看来是要都加入到成员变量里,在C++里再设全局变量就和安全性的本质特点相违了~
还有一个问题,现在摄像机拍图存图对应了一个类,我再添加很多图像处理方面的函数,也加进去关系不大还冗杂,是再新建一个类比较好吧?