CSDN论坛 > VC/MFC > 基础类

对成员函数实现回调,并访问非静态成员的问题 [问题点数:100分,结帖人lsamsony]

Bbs1
本版专家分:0
结帖率 96.06%
CSDN今日推荐
Bbs9
本版专家分:78505
Blank
进士 2005年 总版技术专家分年内排行榜第九
Blank
微软MVP 2005年9月 荣获微软MVP称号
Blank
红花 2005年2月 VC/MFC大版内专家分月排行榜第一
2005年1月 VC/MFC大版内专家分月排行榜第一
2004年11月 VC/MFC大版内专家分月排行榜第一
Blank
黄花 2005年4月 VC/MFC大版内专家分月排行榜第二
2005年3月 VC/MFC大版内专家分月排行榜第二
Bbs9
本版专家分:86974
Blank
微软MVP 2006年1月 荣获微软MVP称号
Blank
红花 2003年12月 VC/MFC大版内专家分月排行榜第一
Blank
黄花 2004年2月 VC/MFC大版内专家分月排行榜第二
2003年11月 VC/MFC大版内专家分月排行榜第二
Blank
蓝花 2004年8月 VC/MFC大版内专家分月排行榜第三
2003年10月 VC/MFC大版内专家分月排行榜第三
2004年2月 扩充话题大版内专家分月排行榜第三
Bbs5
本版专家分:2375
Bbs10
本版专家分:188320
Blank
进士 2006年 总版技术专家分年内排行榜第五
2004年 总版技术专家分年内排行榜第八
Blank
银牌 2006年10月 总版技术专家分月排行榜第二
2006年9月 总版技术专家分月排行榜第二
Blank
铜牌 2006年5月 总版技术专家分月排行榜第三
Blank
微软MVP 2006年1月 荣获微软MVP称号
2008年1月 荣获微软MVP称号
2007年1月 荣获微软MVP称号
Bbs1
本版专家分:40
Bbs4
本版专家分:1089
Blank
红花 2003年9月 扩充话题大版内专家分月排行榜第一
2004年12月 C/C++大版内专家分月排行榜第一
2004年11月 C/C++大版内专家分月排行榜第一
Blank
黄花 2005年1月 C/C++大版内专家分月排行榜第二
Bbs1
本版专家分:0
Bbs9
本版专家分:78505
Blank
进士 2005年 总版技术专家分年内排行榜第九
Blank
微软MVP 2005年9月 荣获微软MVP称号
Blank
红花 2005年2月 VC/MFC大版内专家分月排行榜第一
2005年1月 VC/MFC大版内专家分月排行榜第一
2004年11月 VC/MFC大版内专家分月排行榜第一
Blank
黄花 2005年4月 VC/MFC大版内专家分月排行榜第二
2005年3月 VC/MFC大版内专家分月排行榜第二
Bbs4
本版专家分:1051
Bbs1
本版专家分:0
Bbs4
本版专家分:1499
Bbs1
本版专家分:0
Bbs7
本版专家分:14730
Bbs1
本版专家分:0
Bbs7
本版专家分:14730
Bbs4
本版专家分:1499
Bbs12
本版专家分:431894
版主
Blank
榜眼 2009年 总版技术专家分年内排行榜第二
2005年 总版技术专家分年内排行榜第二
Blank
银牌 2009年7月 总版技术专家分月排行榜第二
2009年3月 总版技术专家分月排行榜第二
2009年1月 总版技术专家分月排行榜第二
2005年7月 总版技术专家分月排行榜第二
2005年5月 总版技术专家分月排行榜第二
2005年3月 总版技术专家分月排行榜第二
Blank
优秀版主 优秀小版主
2015年8月优秀小版主
2015年9月优秀小版主
2015年5月优秀小版主
2015年2月论坛优秀版主
Blank
铜牌 2009年6月 总版技术专家分月排行榜第三
2009年2月 总版技术专家分月排行榜第三
2005年4月 总版技术专家分月排行榜第三
2005年1月 总版技术专家分月排行榜第三
Bbs1
本版专家分:0
匿名用户不能发表回复!登录|注册
其他相关推荐
类的静态方法(函数)中为什么不能调用非静态成员(属性)?
程序最终都将在内存中执行,变量只有在内存中占有一席之地时才能被访问。 类的静态成员(变量和方法)属于类本身,在类加载的时候就会分配内存,可以通过类名直接去访问;非静态成员(变量和方法)属于类的对象,所以只有在类的对象产生(创建类的实例)时才会分配内存,然后通过类的对象(实例)去访问。在一个类的静态成员中去访问其非静态成员之所以会出错是因为在类的非静态成员不存在的时候类的静态成员就已经存在了,访问一
为什么静态方法不能直接访问非静态成员?
static成员是在JVM的CLASSLOADER加载类的时候初始化的,而非static的成员是在创建对象,即new 操作的时候才初始化的;类加载的时候初始化static的成员,此时static 已经分配内存空间,所以可以访问;非static的成员还没有通过new创建对象而进行初始化,所以必然不可以访问。 简单点说:静态成员属于类,不需要生成对象就存在了.而非静态需要生成对象才产生,所以静态成员
C++静态成员和非静态成员的区别
1.数据成员可以分静态变量、非静态变量两种. 静态成员:静态类中的成员加入static修饰符,即是静态成员.可以直接使用类名+静态成员名访问此静态成员,因为静态成员存在于内存,非静态成员需要实例化才会分配内存,所以静态成员不能访问非静态的成员..因为静态成员存在于内存,所以非静态成员可以直接访问类中静态的成员.静态成员在每个类中只有一个拷贝,是解决同一个类的不同对象之间数据和函数共享问题的。
C++静态成员函数访问非静态成员的几种方法
http://www.cnblogs.com/rickyk/p/4238380.html 大家都知道C++中类的成员函数默认都提供了this指针,在非静态成员函数中当你调用函数的时候,编译器都会“自动”帮你把这个this指针加到函数形参里去。当然在C++灵活性下面,类还具备了静态成员和静态函数,即 class A { public: static void te
java中静态方法调用非静态成员变量、非静态方法
public class Circle { private double radius = 1.0; double getAre() { return radius * radius * Math.PI; } public static void main(String[] args) { Circle myCircle = new Circle();
c++-静态成员函数和非静态成员函数的区别
1.virtual与静态函数 C++中,静态成员函数不能被声明为virtual函数。 例如,下面的程序会编译失败。#include<iostream> class Test { public: // 编译错误:static成员函数不能声明为virtual virtual static void fun() { } }; 同样地,静态
非静态成员引用必须与静态成员相对
文章转载自:http://blog.csdn.net/shenqi67/article/details/7533094 Instance成员和static成员(p318) 实例变量/函数(instance variable):和一个类定义的实例(对象)密切相关。对同一个类的不同对象,其实例变量占有不同的存储空间。 Static变量(static variable or cla
对于Java静态成员变量和非静态成员变量的一些学习方法
内存的划分 首先,一个程序在执行的时候,不同的代码会在内存开辟不同的区域. 基本上是:   代码区(code segment):主要存放程序的代码.   数据区(data segment):存放静态成员变量和字符串常量   栈(stack):局部变量   堆(heap):通过new创建出来的对象. heap stack data segment
C++类中静态成员与非静态成员的相互访问问题
类中包含成员变量和成员函数,成员变量又分为静态成员变量和非静态成员变量,成员函数又分为静态成员函数和非静态成员函数; 他们之间的访问关系如下: 非静态成员函数可以访问非静态成员变量,也可以访问静态成员变量,都是直接访问,不需要加对象名称; 静态成员函数可以直接访问静态成员变量,但是如果要访问非静态成员变量,则需要在非静态成员变量前加上对象名称,如:this->m_memoberVariabl
MFC下给线程函数传递非静态成员变量
在MFC下类的线程函数必须是静态函数,也就是说不属于某个对象,而是属于类方法,当对象结束时线程并不结束。 而静态函数必须使用静态成员变量,因此不能使用普通的成员变量。 解决以上问题的办法就是——给线程方法传递 this 指针作为参数,通过 this 指针访问成员变量或者普通成员方法。 线程的创建和启动: AfxBeginThread((AFX_THREADPROC)Thre
关闭