在函数访问类成员
① C++中的线程函数如何访问类中的成员变量
有两种方法:a. 定义线程函数为全局函数 b. 定义线程函数为类的静态成员函数
针对线程函数为类的静态成员进行说明。如果是静态数据成员,当然可以直接访问,但是如果要访问非静态数据成员,直接访问是做不到的。如果要想在线程函数中访问和操作类的非静态成员变量,可以把线程函数作为一个适配器,在适配器中调用类的非静态成员函数。例如:
class CMyClass{public:
void TestFunc();
static int ThreadFunc(LPVOID pParam);// Adapterprotected:
int ThreadFuncKernal();// Kernal}void CMyClass::TestFunc(){
AfxBeginThread(TreadFunc, this);}// Thread function Adapter
int CMyClass::ThreadFunc(LPVOID pParam){
CMyClass *pObj = (CMyClass *)pParam;
return pObj-ThreadFuncKernal();}// Thread function kernal
int CMyClass::ThreadFuncKernal(){while(1){
② JS怎么在类实例的事件处理函数中访问类实例的成员
在事件处理函数之外定义一个变量 var that = this;
然后在事件处理函数之内用 that.成员名 访问。
如果支持ES6的话,直接使用箭头函数可以直接用 this访问。
③ 如何在一个类中访问另一个类的成员函数
假设你想在类A里调用类B的函数int f(x),两种办法:
1、class A::B 也就是说将B定义为A的父类, 这样你就可以自然的在A里面用f(x)了
2、class A
{
B B_ins;
int g(x);
}
int g(x)
{
return B_ins.f(x)
}
也就是说你可以在A里面使用一个B的对象作为成员变量,这样就可以用他的函数了
④ C++中类的成员函数能否访问类的私有成员
类的成员函数可以访问类的私有成员的,友元函数是为了让除了类的成员函数以外的函数可以访问到类的私有成员。
⑤ 如何在自己编的函数里访问当前窗口类的成员变量急啊!!先谢谢了!!
类向导,生成一个变量
然后你的函数要是对话框类的一个成员函数,就可以通过下面的方法:
UpdateData(1);//将对话框控件值更新
UpdateData(0);//将变量更新到对话框控件显示
⑥ 一个类的成员函数可以直接访问这个类的私有成员(也是一个类)中的私有成员么----在线等
是可以的。但是这些私有变量只能出现在类体或者是成员函数体的定义当中,不能出现在main函数里。在main函数中,这些私有变量是看不见的,只能通过成员函数才能操作私有变量,甚至在main函数中成员函数的参数列表里也不能有类的成员变量。
⑦ C++中的线程函数如何访问类中的成员变量
有两种方法:a. 定义线程函数为全局函数 b. 定义线程函数为类的静态成员函数
针对线程函数为类的静态成员进行说明。如果是静态数据成员,当然可以直接访问,但是如果要访问非静态数据成员,直接访问是做不到的。如果要想在线程函数中访问和操作类的非静态成员变量,可以把线程函数作为一个适配器,在适配器中调用类的非静态成员函数。
⑧ 友元函数能不能访问类中的私有数据成员
1、 友元函数是可以直接访问类的私有成员的非成员函数。它是定义在类外的普通函数,它不属于任何类,但需要在类的定义中加以声明,声明时只需在友元的名称前加上关键字friend。
2、 友元函数可以访问类的静态成员、私有成员和公有成员。
3、友元的作用在于提高程序的运行效率(即减少了类型检查和安全性检查等都需要的时间开销),但是,它破坏了类的封装性和隐藏性,使得非成员函数可以访问类的私有成员。
⑨ 如何在主函数中调用类中的成员函数调用
主函数中调用类中的成员函数调用方式为:对象名.成员函数名(参数列表)。
其中“.”是成员运算符,用来对成员进行限定,指明所访问的是哪一个对象中的成员。不仅可以在类外引用对象的公用数据成员,而且还可以调用对象的公用成员函数,但同样必须指出对象名,如:
stud1.display( );//正确,调用对象stud1的公用成员函数。
display( );//错误,没有指明是哪一个对象的display函数。
由于没有指明对象名,编译时把display作为普通函数处理。应该注意所访问的成员是公用的(public )还是私有的(private )。只能访问public成员,而不能访问private成员。
(9)在函数访问类成员扩展阅读:
类的成员函数与一般函数的区别:
1、类的成员函数是属于一个类的成员,出现在类体中。类的成员函数可以被指定为private(私有的)、public (公用的)或protected(受保护的)。在使用类函数时,要注意调用它的权限(它能否被调用)以及它的作用域(函数能使用什么范围中的数据和函数)。
2、私有的成员函数只能被本类中的其它成员函数所调用,而不能被类外调用。
3、成员函数可以访问本类中任何成员(包括私有的和公用的),可以引用在本作用域中有效的数据。
4、一般的做法是将需要被外界调用的成员函数指定为public,它们是类的对外接口,并非要求把所有成员函数都指定为public。有的函数并不是准备为外界调用的,而是为本类中的成员函数所调用的,就应该将它们指定为private。
5、类的成员函数的作用是支持其它函数的操作,是类中其它成员的工具函数(utility function),类外用户不能调用这些私有的工具函数。
6、类的成员函数是类体中十分重要的部分。如果一个类中不包含成员函数,就等同于C语言中的结构体了,体现不出类在面向对象程序设计中的作用。