C++ 父类使用的this指针

来源:互联网 发布:linux考试试题 编辑:程序博客网 时间:2024/06/06 20:42

比如说

----------------------------------------------------------

    父类

----------------------------------------------------------------

 class FatherClass
- {
| private:
|     static FatherClass* fatherClass;
| public:
|     FatherClass();
|     static FatherClass* getFatherClass();

| };

----------------------------------------------------------------------


  #include"FatherClass.h"
  
  FatherClass* FatherClass::fatherClass = 0;
  
  FatherClass::FatherClass()
- {
|     fatherClass = this;
| }

----------------------------------------------------------------------------



------------------------------------------------------------------------

      子类

-------------------------------------------------------------

#include"FatherClass.h"
  
  class ChildClass:FatherClass
- {
| private:
|     int a;
| public:
|     ChildClass();

| };

------------------------------------------------------------------------



  #include"ChildClass.h"
  ChildClass::ChildClass()
- {
|     this->a = 10; 
| }



main

------------------------------------------------------------

 #include"ChildClass.h"
  #include<iostream>
  using namespace std;
  
  int main()
- {
|     ChildClass child;
|     int Childlen = sizeof(ChildClass);
|     int FatherLen = sizeof(FatherClass);
|     int intThisLen = sizeof(FatherClass::getFatherClass());
|     cout<<"Childlen = "<<Childlen<<endl;   //4
|     cout<<"FatherLen = "<<FatherLen<<endl; //1
|     cout<<"intThisLen = "<<intThisLen<<endl; //4
|     return 0;
| }


多态就这样产生了。这种用法太咯了,而且也不安全。但是见了也不要怪。