date class [version 943]

Bjarne Stroustrup “Programming Principles and Practice Using C++”
Chapter 9 Drill 3
Using std_lib_facilities.h by Bjarne Stroustrup.

//	Philipp Siedler
//	Bjarne Stroustrup's PP
//	Chapter 9 Drill 3

#include "std_lib_facilities.h"

class Date {
	
public:
	int y, m, d;
	Date(int y, int m, int d) :y(y), m(m), d(d) {};
	void add_day(int n);
	int month() { return m; }
	int day() { return d; }
	int year() { return y; }
};

void Date::add_day(int n) {
	d += n;
}

int main()
try
{
	Date today{ 1978, 6, 25 };
	Date tomorrow = today;
	
	tomorrow.add_day(1);

	cout << "Year: " << today.y << " Month: " << today.m << " Day: " << today.d << "\n";
	cout << "Year: " << tomorrow.y << " Month: " << tomorrow.m << " Day: " << tomorrow.d << "\n";

	keep_window_open();
}

catch (runtime_error e) {
	cout << e.what() << '\n';
	keep_window_open();
}
catch (...) {
	cout << "Exiting\n";
	keep_window_open();
}
Output:
Year: 1978 Month: 6 Day: 25
Year: 1978 Month: 6 Day: 26
Please enter a character to exit

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.