当前位置:编程学习 > C/C++ >>

C++的小问题!! 麻烦了大大了

class Manager:public Employee{
public:
 Manager(string Name,string id,float s=0.0):Employee(Name,id){
  WeeklySalary=s;
 }

  这段代码中   上面的Manager继承Employee   那个  下面的Public:中的内容是什么意思?构造函数的继承??

追问:#include<iostream>
using namespace std;
class TwoCoor
{
private:
 double x,y;
public:
 TwoCoor(int a=0,int b=0)
 {
  x=a;y=b;
 }
 friend TwoCoor operator+(TwoCoor a,TwoCoor b);
 friend TwoCoor operator-(TwoCoor a,TwoCoor b);
 friend TwoCoor &operator<<(ostream &os,TwoCoor &s);
 friend TwoCoor &operator>>(istream &is,TwoCoor &s);
 friend double distcount(TwoCoor a,TwoCoor b);
};
TwoCoor operator+(TwoCoor a,TwoCoor b)
{
 TwoCoor i;
 i.x=a.x+b.x;
 i.y=b.x+b.y;
 return i;
}
TwoCoor operator-(TwoCoor a,TwoCoor b)
{
 TwoCoor i;
 i.x=a.x-b.x;
 i.y=a.y-b.y;
 return i;
}
TwoCoor discount(TwoCoor a,TwoCoor b)
{

 double x=(a.x-b.x);
 double y=(b.y-b.y);
 double i=sprt(x*x+y*y);
 return i;
}
TwoCoor &operator<<(ostream &os,TwoCoor &s);
{
 os<<"(<<s.x<<","<<s.y<<)";
 return s;
}
TwoCoor &operator>>(instream &is,TwoCoor &s)
{
 is>>x.y>>s.y;
 return s;
}
void main()
{
 TwoCoor m,n,a1,a2;
 double a1;
 cout<<"请输入两点的坐标"<<endl;
 cout<<"请输入X"<<endl;
 cin>>m;
 cout<<"请输入y"<<endl;
 cin>>n;
 cout<<"m="<<m<<endl;
 cout<<"n="<<n<<endl;
 cout<<"两点坐标运算+:"<<endl;
 a1=m+n;
 cout<<"a1="<<a1<<endl;
 cout<<"两点减运算-:"<<endl;
 a2=m-n;
 cout<<"a2="<<a2<<endl;
 cout<<"两点的之间的距离"<<endl;
 cout<<"a3="<<distcount(m,n)<<endl;
}

 

 


 
 

 能帮我看下这断程序的问题么?

 

答案:C++里继承的方式有3种,public 是共有继承,  private 是私有继承,protected是保护继承,这里第一个public就是指 共有继承。楼主 应该注意到 Manager 是一个类,每个类有自己的共有数据或函数成员 和私有数据及函数成员,对应的关键字 分别有 public  private  以及  protected,下面的public: 指的就是 这里的东西 是这个类的共有函数。

Manager(String Name,string id, float s=0.0)//子类Manager的构造器

Employee(Name,id)//父类Employee的构造器 

构造器一般是在实例化对象的给类中的属性赋值的。

是class Manager的构造函数。

这是间接的条用基类的构造函数,来为基类数据成员赋值. 跟在函数体里条用一样.不过前提条件是 基类构造函数有提供无参数的构造函数,也就是默认构造函数

上一个:学生成绩管理c++课程设计代码
下一个:C++软件工程师需要学习哪些方面的知识?

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,