C++调用一个成员函数的需求this指针的情况
2015-07-08 15:53
851 查看
1、虚成员函数,因为需要this展望虚表指针的指针
2、在数据成员的操作部件的功能
#include "stdafx.h" #include <iostream> #include <typeinfo> using namespace std; class A { public: virtual void foo() { cout<<"A foo"<<endl; } void pp() { cout<<"A PP"<<endl; } }; class B:public A { public: B() { num=100; } void foo() { cout<<"B foo"<<endl; } void pp() { cout<<"B PP"<<endl; } void FunctionB() { cout<<"Excute FunctionB!"<<endl; } void show() { cout<<num; } private: int num; }; int main(int argc,char* argv[]) { A a; A* pa=&a; B *pb0,*pb; pb0->FunctionB(); pb=dynamic_cast<B*>(pa); if(pb==NULL) { cout<<"The pointer pb is null"<<endl; } (dynamic_cast<B*>(pa))->FunctionB(); (dynamic_cast<B*>(pa))->foo(); //运行出错,由于须要this指针 (dynamic_cast<B*>(pa))->show(); //运行出错。由于须要this指针 system("pause"); return 0; }
相关文章推荐
- 黑马-C语言-结构体
- C++——对象和类
- 黑马程序员-C语言学习笔记(循环)
- C++ 开源库
- eclipse安装C++工程环境----CDT环境————eclipse开发openCV环境准备2
- 黑马程序员——C语言基础---基本运算
- 黑马-C语言-宏定义
- c++ 字符串转数字 数字转字符串
- C语言的字节对齐及#pragma pack的使用
- c++判断图片格式
- 端口映射源码C++(转)
- C++中各种类型的成员变量的初始化方法
- C++顺序容器vector、deque、list
- C++管理指针成员
- 在C语言中,double、long、unsigned、int、char类型数据所占字节数
- C#与C/C++的交互
- C++实现二叉树之二叉链表
- VS中CUDA与C++工程项目的配置
- C++高精度性能测试函数
- (C++)函数参数传递中的一级指针和二级指针