cpp15.cpp

来自「C++参考书」· C++ 代码 · 共 61 行

CPP
61
字号

// Coded by plusir -- Dec.30.2002.
// Standard C++ Bible -- (P305-11-15)

#include <iostream>
using namespace std ;

class CustomDate ;

class Date
{
	public:
		Date( const CustomDate & ) ;
		void display( void ) const
		{ cout << endl << mo << '/' << da << '/' << yr ; }

	private:
		int mo ;
		int da ;
		int yr ;
} ;

class CustomDate
{
	public:
		CustomDate( int d = 0, int y = 0 )
		{
			da = d ;
			yr = y ;
		}

		friend Date::Date( const CustomDate & ) ;

	private:
        int da, yr ;
} ;

Date::Date( const CustomDate &cd )
{
	static int dys[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 } ;

	yr = cd.yr ;
	da = cd.da ;

	for ( mo = 0; mo < 11; ++mo )
		if ( da > dys[mo] )
			da -= dys[mo] ;
		else
			break ;

	mo++ ;
}

int main()
{
	Date dt( CustomDate( 123, 89 ) ) ;
	dt.display() ;

	return 0 ;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?