Handling non-local errors at runtime (part 2)
This lesson contains approximately 13 minutes of video content.
Types of exceptions defined for us in <stdexcept>
Preconditions / postconditions
Activity: Find person in std::vector by id
Graded Playground Autograder
Activity Prompt:
In this problem, you will implement the function
FindPersonById(const std::vector<Person>& people, unsigned int id)
. This function will search people
for a Person
with id
. If the person exists, simply return people.at(loc)
where loc
is the index of the Person
in people
. If a Person
with id
is not found in people
, report this to the caller by throwing an std::runtime_error
with the message Invalid id number
.
#include <iostream>
#include <string>
#include <vector>
#include "person.hpp"
#include "utilities.hpp"
int main() {
}
#ifndef PERSON_HPP
#define PERSON_HPP
#include <string>
struct Person {
std::string first_name;
std::string last_name;
unsigned int id;
};
#endif
#ifndef UTILITIES_HPP
#define UTILITIES_HPP
#include <vector>
#include "person.hpp"
const Person& FindPersonById(const std::vector<Person>& people, unsigned int id);
#endif
#include <stdexcept>
#include "person.hpp"
#include "utilities.hpp"
Submit is not supported in this site.