定义一个类,如果实例成局部对象,在这个对象中如何能使用一个全局变量呢?
--------------------
根据编程规范的要求,要减少类的耦合性,所以在类中不能直接操作类外的东西.
可是我想自定义一个ado类,可是这个类中用到的连接要是一个全局的连接对象.因为做为c/s系统,不宜做成随用随连的形式.最后保持一个连接永不关,直到整个程序关闭时才关闭连接.
所以在整序中实例化的类对象都必须使用一个已存在连接.即每个局部对象中都要用到一个全局的连接对象变量.[因我的整个程序只通过一个全局的连接对象变量连接sql server数据库]
如何实现呢?
当前,我试过,在类是可以直接对全局对象进行操作的.但是这样据说不好.我想问规范的类应该如何设计才行呀?即这个类可以实例化局部对象,但是这个类对象中的activeconnection是一个已存在连接对象.
--------------------
根据编程规范的要求,要减少类的耦合性,所以在类中不能直接操作类外的东西.
可是我想自定义一个ado类,可是这个类中用到的连接要是一个全局的连接对象.因为做为c/s系统,不宜做成随用随连的形式.最后保持一个连接永不关,直到整个程序关闭时才关闭连接.
所以在整序中实例化的类对象都必须使用一个已存在连接.即每个局部对象中都要用到一个全局的连接对象变量.[因我的整个程序只通过一个全局的连接对象变量连接sql server数据库]
如何实现呢?
当前,我试过,在类是可以直接对全局对象进行操作的.但是这样据说不好.我想问规范的类应该如何设计才行呀?即这个类可以实例化局部对象,但是这个类对象中的activeconnection是一个已存在连接对象.
这个m_s_i变量到程序结束都会记住你的值,无论是否局部对象释放..h文件
class Ctest
{
public:
Ctest(void);
~Ctest(void);
public:
static int m_s_i;
};
.cpp文件
#include ".\test.h"
int Ctest::m_s_i = 1; //这句初始化很重要,否则会报error LNK1120Ctest::Ctest(void)
{
}Ctest::~Ctest(void)
{
}