\\.缺少运算符重载的概念
\\.若为抽象类.(只用于被继承).必须有纯虚函数
class StudentID
{
public:
StudentID(int ssId=0)
{
}
StudentID(StudentID &p) \\.没有这个函数,则会是浅拷贝
{
}
StudentID(int &i):ten(10),refI(i) \\引用和常量的赋值
{
}
friend usefriend(Student&m,StudnetID&v); \\.友元的使用,只是申明,定义在类外部进行
friend class Student; \\.友类定义
protected:
const int ten;
int &infI;
};
class Student
{
public:
Student(char*pName="no name",int ssId=0):id(ssId) \\.没有定义时为默认构造.最后为申明有引用到了其他类id.即构成了组合
{
strcpy(name,pName);
cout<<"Constructing new student"<<pName<<endl;
noOfStudents++; \\静态成员
}
Student(Student &s) \\.拷贝构造函数,没有定义时为默认构造,浅拷贝、深拷贝区分
{
cout<<"Constructing copy of"<<s.name<<endl;
strcpy(name,"copy of");
id=s.id;
}
Student(); \\.重载构造函数
Student(int d);
Student(int m,int d);