对象与常对象的区别

来源:互联网 发布:office批量打印软件 编辑:程序博客网 时间:2024/05/16 05:10
#include <iostream>using namespace std;class Date{public:Date(int y,int m,int d);void showDate();void setDate(int y,int m,int d);void showDate() const;//void setDate1(int y,int m,intd) const;private: int year; //const int year;  //当数据成员声明为常数据成员时,初始化后也不能对他进行修改。否则,错误。。 int month; //const int month; int day; // const int day; };Date::Date(int y,int m,int d):year(y),month(m),day(d)  //注意:常数据成员和指针数据成员只能用列表进行初始化。{}void Date::setDate(int y,int m,int d){year=y;month=m;day=d;}void Date::showDate(){cout<<year<<"."<<month<<"."<<day<<endl;}/*const void Date::setDate(int y,int m,int d) //常成员函数{year=y;month=m;day=d;}*//* void Date::showDate()  const//常成员函数{cout<<year<<"."<<month<<"."<<day<<endl;}int main(){Date date(2012,11,16);date.showDate();    date.setDate(2013,2,25);date.showDate();const Date date1(2013,2,26);date1.showDate();//date1.setDate(2013,3,25); //错误,因为声明常对象之后就不能在对常对象的值进行修改。//date1.showDate();return 0;