c++ 抽象类实例代码

2014-11-24 13:09:00 · 作者: · 浏览: 2
1、凡是包含纯虚函数的类都是抽象类;
2、抽象类不能被实例化;
3、可以使用public方式继承抽象类,并且实现抽象类中的所有纯虚函数;

如下代码例子:
myclass.h
namespace myclass
{
class MyClass
{
public:
MyClass(){};
static int myget();
virtual int func1()=0;
virtual int func2()=0;
static void myset(char **);
~MyClass(){};
};
class NewClass: public MyClass
{
public:
NewClass(){};
virtual int func1();
virtual int func2();
~NewClass(){};
};
}

myclass.cpp
#include
#include"myclass.h"
int myclass::MyClass::myget()
{
return 111;
}
void myclass::MyClass::myset(char ** p)
{
* p=(char*)malloc(10);
char *t="good";
strcpy(*p,t);
return ;
}
int myclass::NewClass::func1()
{
return 1;
}
int myclass::NewClass::func2()
{
return 2;
}

test.cpp
#include
#include"myclass.h"
using namespace std;
using namespace myclass;
int main()
{
int x = MyClass::myget();
cout<<"x="< char * p;
MyClass::myset(&p);
cout<<"p="< free(p);
NewClass *oneclass=new NewClass();
MyClass * twoclass=new NewClass();
cout<<"twoclass->myget()="<myget()< return 0;
}