Challenge: Overload a Function
Here is a coding challenge based on the concepts of function overloading.
We'll cover the following
Problem statement
Consider you have a function info()
:
void info(TimeOfDay time) {
writef("%02s:%02s", time.hour, time.minute);
}
Your task is to overload the info()
function for the following structs as well:
struct Meal {
TimeOfDay time;
string address;
}
struct DailyPlan {
Meeting amMeeting;
Meal lunch;
Meeting pmMeeting;
}
Since Meal
only has the start time, add an hour and a half to determine its end time. You can also use the addDuration()
function:
TimeOfDay addDuration(TimeOfDay start, TimeOfDay duration) {
TimeOfDay result;
result.minute = start.minute + duration.minute;
result.hour = start.hour + duration.hour;
result.hour += result.minute / 60;
result.minute %= 60;
result.hour %= 24;
return result;
}
Get hands-on with 1400+ tech skills courses.