date class [version 941]

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

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

#include "std_lib_facilities.h"

struct Date {
	int y;
	int m;
	int d;
};

void init_day(Date& dd, int y, int m, int d) {
	dd.y = y;
	dd.m = m;
	dd.d = d;
}

void add_day(Date& dd, int n) {
	dd.d += n;
}

int main()
try
{
	Date today;
	Date tomorrow;

	init_day(today, 2005, 12, 24);
	tomorrow = today;
	add_day(tomorrow, 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: 2005 Month: 12 Day: 24
Year: 2005 Month: 12 Day: 25
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.