【求助!】关于应输入声明的问题
#include <iostream>
using namespace std;
class Base
{
protected:
int iBody;
public:
void printOn(){}
Base(int i=0):iBody(i){}
};
class Sub1:public Base
{
private:
int i;
char s;
public:
Sub1(int i,char *s);
this->i=i;
this->s=s;
void printOn(){cout<<i<<":"<<s<<endl;}
};
class Sub2:public Base
{
private:
int i;
short s;
public:
Sub2(int i,short s);
void printOn(){cout<<i<<"and"<<s<<endl;}
};
int main()
{
Sub1 s1(1000,"This is an object of Sub1");
Sub2 s2(2000,10);
s1.printOn();
s2.printOn();
}
这是代码 就是Sub1类里this的地方有错误 说是 应输入声明 这是什么意思?在线等
[解决办法]
Sub1类里的那些 this应该写在构造函数里面啊,你写在构造函数后面什么意思
[解决办法]
#include <iostream>
using namespace std;
class Base
{
protected:
int iBody;
public:
void printOn(){}
Base(int i=0):iBody(i){}
};
class Sub1:public Base
{
private:
int i;
char *s;
public:
Sub1(int i,char *s)
{
this->i=i;
this->s=s;
}
void printOn()
{
cout<<i<<":"<<s<<endl;
}
};
class Sub2:public Base
{
private:
int i;
short s;
public:
Sub2(int i,short s)
{
this->i=i;
this->s=s;
}
void printOn(){cout<<i<<"and"<<s<<endl;}
};
int main()
{
Sub1 s1(1000,"This is an object of Sub1");
Sub2 s2(2000,10);
s1.printOn();
s2.printOn();
}