您好,欢迎来到华拓科技网。
搜索
您的当前位置:首页CPP程序例子

CPP程序例子

来源:华拓科技网


#include < iostream > // 使用C++新标准的流库

/* 使用C++老标准的流库,读者可将该程序改成使用C++新标准的流库,

修改时最好把Date类定义放在同一个源文件内,并去掉“#include ²tdate.h²”预处理语句 */

//#include \"tdate.h\"

using namespace std; // 将std名空间合并到当前名空间

class Date {

public : // 3个公有成员函数

void setDate(int y = 2000, int m = 1, int d = 1);

// 设置具体的年、月、日,其默认值为2000年 1月1日

int isLeapYear( void ); // 判断该年是否为闰年

void printDate( void ); // 显示具体的年、月、日值

private :

int year, month, day; // 3个私有数据成员,保存具体的年、月、日值

};

void Date::setDate( int y, int m, int d )

{ year = y; month = m; day = d; }

int Date::isLeapYear( void ) // 判断该年是否为闰年

{ return ( year % 4 == 0 // 能被4整除的年份基本上是闰年

&& year % 100 != 0) // 能被100整除的年份不是闰年

|| (year % 400 == 0); } // 能被400整除的年份又是闰年

void Date::printDate( void ) // 显示年、月、日的具体值

{ cout << year <<\ << month << \ << day << endl; }

void main( void )

{ Date date1, date2; // 定义日期类Date 的两个对象date1和date2

date1.setDate(2000, 5, 4); // 给对象date1设置年、月、日的具体值

date2.setDate(2000, 4, 9); // 给对象date2设置年、月、日的具体值

int leap = date1.isLeapYear( );

// 判断对象date1的年份是否为闰年,闰年 leap = 1,否则为0

cout << \"LEAP = \" << leap << endl; // 输出“判断是否为闰年”的结果

date1.printDate( ); // 显示对象date1年、月、日的具体值

date2.printDate( ); // 显示对象 date2年、月、日的具体值

}

例 3.2 Counter 类的定义部分、实现部分和测试程序。

#include < iostream > // 使用C++新标准的流库

using namespace std; // 将std名空间合并到当前名空间

class Counter {

public :

Counter( void ) // Counter类的构造函数,在3.3节介绍

{ value = 0; // 初始化数据成员值

cout << \"Constructor called !\\n\";

// 输出显示调用了本构造函数的信息

}

void increment( void ) // 在允许取值范围内计数器加1

{ if( value < 4294967295 ) value++; }

void decrement( void ) // 当计数器的数据成员值不为0时减1

{ if(value > 0) value--; }

unsigned readValue( void ) // 读计数器的值

{ return value; }

~ Counter( void ) // Counter类的析构函数

{ cout << \"Destructor called !\\n\"; }

// 只输出调用了本析构函数的信息,其他什么也不做

private :

unsigned value; // Counter类的私有数据成员,保存计数值

};

void main( void ) // Counter类的测试程序

{ Counter c1 ,c2; // 定义了Counter类的两个对象c1和 c2

for( int i = 1; i <= 6; i++ ) {

c1.increment ( );

// 在第1个for语句的循环体内6次向对象 c1发送增量运算的消息

cout << \"value of c1 = \" << c1.readValue( ) << endl;

// 每循环一次,显示对象c1的计数值

c2.increment( ); // 同样6次向对象c2发送增量运算的消息

}

cout << \"After loop ,value of c2 = \" << c2.readValue( ) << endl;

// 循环完成后,显示对象c2的计数值。

for( int i = 1; i <= 5; i++ )

c2.decrement( );

// 在第2个for语句的循环体内5次向对象 c2发送减量运算的消息

cout << \"Final value of c1 = \" << c1.readValue( )

<< \ << c2.readValue( ) << endl;

} // 显示对象c1和c2最终的计数值

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo6.cn 版权所有 赣ICP备2024042791号-9

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务