在电影.hpp
#ifndef MOVIE_H
#define MOVIE_H
class Movie
{
private:
std::string title;
public:
std::string getTitle() const {return this->title;}
void setTitle(std::string newTitle){this->title = newTitle;}
};
#endif
在 Actor.hpp 中
#ifndef ACTOR_H
#define ACTOR_H
#include "Person.hpp"
#include "Movie.hpp"
class Actor: public Person
{
private:
std::vector<Movie> movieList;
public:
void addMovie(Movie newMovie){this->movieList.push_back(newMovie);}
void printMovies()
{
for(Movie movie: this->movieList)
{
std::cout << movie.getTitle() << '\n';
}
}
};
#endif
如果我添加一个单独的类,代码中会有哪些变化
class Role {
private:
Actor* actor;
Movie* movie;
};
并将此类对象的集合存储在 Movie 和 Actor 中
std::vector<Role> movieList; //inside Actor
std::vector<Role> actorList; //inside Movie
请有人通过使用上面定义的“角色”对象编辑 Movie.hpp 和 Actor.hpp 中的代码来帮助我。