牛骨文教育服务平台(让学习变的简单)
博文笔记

如何打印类成员函数的地址

创建时间:2013-03-14 投稿人: 浏览次数:3404
   类中多个对像中,数据成员有多份,而成员函数仅有一份。如何获得成员函数的地址呢。及如何证明,函数仅有一份呢?

请看如下代码分析:

#include <iostream>
#include <stdio.h>
using namespace std;

class A
{
	public:
		void b(){cout << "call b()" << endl;}
		void c(){
			cout << "call c()" << endl;
			printf("%p
",(&A::b));
//			cout<<&A::b<<endl;
		}
};

int main()
{
	class A a,b,c;
	a.c();
	b.c();
	c.c();

	//或
	void (A::*p)();
	p = &A::b;
	(c.*p)();
	return 0;
}


 

编译输出:

call c()
00420180
call c()
00420180
call c()
00420180
call b()

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。