多线程函数和静态线程函数调用类成员非静态变量和函数的问题
2008-02-01 10:04
253 查看
创建线程时,线程函数如果要设置成类的成员函数,则必须是静态成员函数,在此函数种不能使用非静态成员变量,如果要使用非静态成员变量,则一种比较适合线程的方法是:建立线程的时候把this作为CreateThread的一个参数(即第4个参数,就是那个LPVOID型的),然后线程里就对应pParam,例如:
static UINT ThreadProc(LPVOID pParam)
{
Your_Class *p=(Your_Class *)pParam;
//然后用p间接使用成员变量。
}
线程函数是回调函数,因此它必须是静态成员函数或者是类外部声明的全局函数。
更多技术文章请参看施昌权的个人网站: http://www.joyvc.cn
static UINT ThreadProc(LPVOID pParam)
{
Your_Class *p=(Your_Class *)pParam;
//然后用p间接使用成员变量。
}
线程函数是回调函数,因此它必须是静态成员函数或者是类外部声明的全局函数。
更多技术文章请参看施昌权的个人网站: http://www.joyvc.cn
相关文章推荐
- C++ 类中的静态变量和静态成员函数(转)
- 静态成员函数读取非静态变量的方法探讨
- C++静态函数中调用非静态成员函数或变量(方法1静态变量的方法)
- C++中静态成员函数的常量型问题
- 静态成员函数问题
- c++:静态成员变量和静态成员函数使用问题
- C++ 类中的静态变量和静态成员函数
- 关于c++中类静态成员函数可能破坏类封装性的问题
- 一个类成员函数的局部静态变量问题
- 关于C++静态成员函数访问非静态成员变量的问题
- C++ 静态数据成员 成员函数 静态变量 全局变量(2)
- C++关于this指针、静态变量和静态成员函数 http://www.cnblogs.com/clrmas/archive/2010/03/23/1692893.htm
- C++中静态成员函数访问成员变量问题
- 巧妙解决问题:&CMFCcodeDlg::RunCommands”创建指向成员的指针。MFC多线程调用要求调用的接口必须是全局函数或静态成员函数
- c++ 静态变量 静态成员变量 静态成员函数
- C++静态变量和静态成员函数的怪脾气
- 静态变量与静态成员函数
- 成员函数中的静态变量 静态成员函数
- C++中静态成员函数访问成员变量问题
- 关于C++静态成员函数访问非静态成员变量的问题