关于字符指针函数的的一个问题
#include <iostream.h>
#include <stdio.h>
class mammal
{
public:
virtual void Call()=0;
void Color(char *color);
void Class(char *cClass);
char* GetColor();
char* GetClass();
private:
char* m_Color;
char* m_Class;
};
class Cat:public mammal
{
public:
void Call();
};
class Dog:public mammal
{
public:
void Call();
};
void mammal::Class(char *cClass)
{
m_Class=cClass;
}
void mammal::Color(char *color)
{
m_Color=color;
}
char* mammal::GetColor
{
return m_Color;
}char* mammal::GetClass
{
return m_Class;
}
void Dog::Call()
{
cout<<"汪汪!一只"<<GetColor()<<GetClass()<<"\n";
}
void Cat::Call()
{
cout<<"喵喵!一只"<<GetColor()<<GetClass()<<"\n";
}
void main()
{
Cat taotao;
Dog benben;
taotao.Class("波斯猫");
benben.Class("牧羊犬");
taotao.Color("白色");
benben.Color("黑色");
mammal *mam[2]={&taotao, &benben};
for(int m=0;m<2;m++)
{
mam[m]->Call();
}
}
编译时存在这个问题,不知道哪里错了,请高手帮忙,顺便讲一下指针函数,不盛感激
fatal error C1001: INTERNAL COMPILER ERROR
(compiler file 'msc1.cpp', line 1786)
Please choose the Technical Support command on the Visual C++
Help menu, or open the Technical Support help file for more information