找编程高手编一c++程序:要求是该程序有至少8个以上的知识点。。。

知识点范围是:类、对象、向量、指针、const、运算符重载、有元函数、静态数据成员、构造函数、拷贝构造函数、析构函数、继承、虚函数、多态 、类模板。。。 可以在上面任选8个以上的知识点。。 请在程序中帮我注释好各知识点。。。并说明此程序的内容。。。

为什么是8个知识点啊 随便答几个吧 举一些通俗的例子 但是是作业党的话就不能照抄了
指针:说白了就是地址 变量的地址 函数的地址等
指向:指针指向的变量的地址 这个过程就可以理解为指向(我是这样理解的)
静态数据成员:类里面的数据成员 用 static 关键词定义的 是静态建立的 只有在一个函数调用结束以后或者程序结束时才释放内存空间 或者用释放空间的语句
构造函数:就是在建立对象时 系统自动默认调用的函数 如果没有定义构造函数 那么系统也会自动的调用一个空的构造函数 构造函数一般用于成员的初始化赋值等功能
析构函数:和构造函数相反 一个类 可以有多个构造函数 但是只能有一个析构函数 在结束时候调用 调用的顺序有点像进出栈
拷贝构造函数:其实就是构造函数 功能用于拷贝 好像一般由系统自动调用 然后作用大概是拷贝两个对象 复制对象用 具体记不清了
类模版:不用重复定义类 有系统提供的模版 或者可以用别人提供的模版 必要时做一定修改 方便编程人员
多态:一种操作 可以用不同的结果 比如你点击鼠标 点击两次 对不同的程序 跳出来不同的东西 这个就是多态
继承:子类继承父类的特征 具体不好说
const:用于定义类成员 或成员函数 或者指向成员函数的指针的 定义了以后就是 常成员 常成员函数 常指针 等 一般目的是为了保护成员数据不被错误操作而修改
友元函数:一般情况下 定义为private私有的成员是不能被外部函数直接修改的 要修改 就要用的友元函数 但是不建议用 因为这样违背了面向对象程序开发的封装宗旨

这些是我自己的理解 说的不全 不是照书上抄的 能懂的话看一下 也许有不对的地方 我也不是什么高人 请高手勿喷
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-12-15
#include <iostream.h>

class CTime
{
public:
CTime(int a1,int b1,int c1)
{
a=a1;
b=b1;
c=c1;
}
void Print()
{
cout<<a<<":"<<b<<":"<<c<<endl;
}
int a,b,c;
};
class CDate:public CTime //类、继承
{
public:
CDate(int ,int ,int,int ,int ,int); //构造函数
~CDate(); //析构函数
CDate fun(const CDate & d); //const、拷贝构造函数
void Display();
private:
int year,month,day;
};

CDate::CDate (int y,int m,int d,int a1,int b1,int c1):CTime(a1,b1,c1)
{
year=y;
month=m;
day=d;
}
CDate::~CDate()
{
cout<<"析构!"<<endl;
}
void CDate::Display()
{
cout<<year<<"—"<<month<<"—"<<day<<"\t";
Print();
}
CDate CDate::fun(const CDate & d)
{
CDate d1(d.year,d.month,d.day,d.a,d.b,d.c);
return d1;
}
void main()
{
int a,b,c,d,e,f;
cout<<"请输入年、月、日:";
cin>>a>>b>>c;
cout<<"请输入时、分、秒:";
cin>>d>>e>>f;
CDate D1(a,b,c,d,e,f); //对象
D1.Display();
cout<<"**************"<<endl;
CDate D2=D1.fun(D1);
D2.Display();
cout<<"**************"<<endl;
CDate *p=&D1; //指针
p->Display();
}本回答被网友采纳