社区
C++ 语言
帖子详情
成员函数和普通函数有什么不同???
raymond323
2005-05-20 11:01:15
例如普通函数void pmf()中 pmf可表示地址 而成员函数必须用&C::pmf来表示函数地址 这是为社么???
谢谢
...全文
311
17
打赏
收藏
成员函数和普通函数有什么不同???
例如普通函数void pmf()中 pmf可表示地址 而成员函数必须用&C::pmf来表示函数地址 这是为社么??? 谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zdy_8212
2005-05-22
打赏
举报
回复
作用域的问题。对象编辑的思想。两者是相同的,只不过一个是被绑定到某个域。
xiaozscs
2005-05-21
打赏
举报
回复
因为成员函数在c::中定义的
zhousqy
2005-05-21
打赏
举报
回复
成员函数可以访问数据成员。
TomDebug
2005-05-21
打赏
举报
回复
函数作用域不一样
普通函数的作用域如果是extern则是整个工程中使用
如果是局部函数则是在函数内部使用
而类的成员函数是在类的作用域内使用
xjp6688
2005-05-21
打赏
举报
回复
呵呵,好好看看书
chon81
2005-05-21
打赏
举报
回复
概念上是成员函数是针对类内部的函数
观念上可以认为都一样的,你可以把成员函数当做普通函数使用了,这就是面向过程的编程思想。
也可以认为不一样,把成员函数只处理所在类的数据的函数,这就是面向对像的编程思想。
James_ht
2005-05-21
打赏
举报
回复
成员函数是对象方法.
lan_yanjing
2005-05-21
打赏
举报
回复
再好好学学什么是面向对象思想吧
hell_wolf
2005-05-21
打赏
举报
回复
普通函数是情人,大家都在泡;
成员函数是老婆,是属于个人的,乱泡别人的会报告错误。
yanyuxin
2005-05-21
打赏
举报
回复
续上:
举个例子,比如一个“人”的类,它有个成员函数“吃饭()”。
他的实例化对象有“张三”张三的儿子(相当于子类的实例)“张小二”以及“李四”。
现在你执行 “吃饭()”,那你是让谁”吃饭“呢。
而普通函数没有对象的限制,相当于调用它的就是它的对象。
yanyuxin
2005-05-21
打赏
举报
回复
&C::pmf来表示函数地址,之所以要这样做是因为c++是面向对象的,它支持继承,并且一个类可以有很多实例也称对象。
此中表示是程序需要知道你调用的是哪个类的哪个对象的函数,要不程序如何知道你的函数对谁进行操作呢。
其实它隐含的传递了一个this指针,以指向这个对象的函数。
只有在类中声明的静态函数不需要这样,也可以使用,以为它不针对任何对象。
具体方面请参照相关书籍。
MagicCarmack
2005-05-21
打赏
举报
回复
它们之间的差别就是C和C++的区别!
nodummy
2005-05-21
打赏
举报
回复
例如普通函数void pmf()中 pmf可表示地址 而成员函数必须用&C::pmf来表示函数地址 这是为社么???
谢谢
====================
成员函数的类型是ret_type (ClassName::*)(paralist),而普通函数的类型是ret_type (*)(paralist),类的静态成员函数类型同普通函数……
lonelyforest
2005-05-21
打赏
举报
回复
这个问题不太重要吧
qwprince2004
2005-05-20
打赏
举报
回复
成员函数是实现类的定义行为,实用方面来看 和普通函数一样的 但是成员函数是完成类的特定工作的. 如初始化类的数据成员等 构造函数 析构函数 复制构造函数 这都是成员函数
别的还有就是 使用成员函数能更好的体现OO的思想
::<--是范围解析运算符 使用特定类的成员函数必须使用这个符号以标明函数为特定类的成员函数
呵呵 能想到就这么多了 不知道对你有帮助没
llmsn
2005-05-20
打赏
举报
回复
C::是表示其属于哪个域里面的函数,&C::pmf是C域里面成员函数的地址.
sunman1982
2005-05-20
打赏
举报
回复
&C::是表明他的域 就是属于的关系
Excel
函数
100问
初学Excel
函数
你是否总有一种无力感?工作中遇到问题时,不知道用什么
函数
来解决?
函数
的单词都认识,但一用它来写公式,要么写不出来,要么结果不对,更别说编写嵌套公式那些
函数
名称、
函数
参数的作用总是记不住,公式总是编制不对;用Excel多年,还是只会常用的那三五个
函数
。本次课程结合职场工作中遇到的问题,整理100问用
函数
来帮助大家学习Excel
函数
的这些痛点。熟练掌握Excel
函数
的他,总是几分钟就能完成,别人倒腾1天的工作量。
静态
成员
函数
和
普通
成员
函数
的区别?
http://bbs.bccn.net/thread-289889-1-1.html 静态
成员
函数
和
普通
成员
函数
的区别? 静态
函数
只有当程序结束的时候才从内存消失。而非静态则是动态加载到内存,不需要的时候就从内存消失 静态成员不属于对象,而属于类。不创建对象也可调用。 从代码形式上来说没有任何区别。
普通
类
成员
函数
与静态
成员
函数
的区别在于
普通
成员
函数
有一个隐藏
类的
成员
函数
和
普通
成员
函数
的区别
区别1: 静态
成员
函数
实际上是一个全局
函数
,不依赖一个类的对象. 而属于类,不创建对象也可调用,静态
成员
函数
没有this指针。
普通
成员
函数
依赖一个类的对象,也就是它有一个隐藏的调用参数(this)指针,必须指向一个类的对象。 区别2: 静态
函数
只能访问类中的静态成员变量; 区别3:: 如果
成员
函数
想作
静态
成员
函数
和
普通
成员
函数
的区别
成员
函数
:无论静态
函数
还是非静态
函数
,都是属于类的(这一点与数据成员的静态非静态
不同
),对象并不拥有
函数
的拷贝.两者的区别在于:非静态的
函数
由类对象(加.或指针加->;)调用,这时将向
函数
传递this指针.而静态
函数
由类名(::)(或对象名.)调用,但静态
函数
不传递this指针,不识别对象个体,所以通常用来对类的静态数据成员操作.程序最终都将在内存中执行,变量只有在内存中占有一席之地时才能被...
C++
普通
函数
,
普通
成员
函数
、静态
成员
函数
的区别
1
普通
函数
:属于全局
函数
,不受具体类和对象的限制,可以直接调用。 例如: void printf() { printf("Hello World"); } 2
普通
成员
函数
:C++
普通
成员
函数
本质上是一个包含指向具体对象this指针的
普通
函数
,即c++类的
普通
成员
函数
都隐式包含一个指向当前对象的this指针。 例如:定义一个类: class myClass { publi
C++ 语言
64,654
社区成员
250,484
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章