• Source
    1. #include <iostream>
    2. #include <memory>
    3.  
    4. class User{
    5. public:
    6. int URI = 0;
    7. User(int a){
    8. URI = a;
    9. }
    10. }
    11.  
    12. class Group {
    13. public:
    14. std::shared_ptr <std::vector<User>> members = std::make_shared<std::vector<User>>();
    15. void Group::remove(User a) {
    16. for (auto i = 0; i < members->size(); i++){
    17. if (a.URI == (*(members->begin()+i)).URI) members->erase(*(members->begin() + i));
    18. }
    19. Group(User a, User b, User c){
    20. members -> push_back(a);
    21. members -> push_back(b);
    22. members -> push_back(c);
    23. }
    24. }
    25.  
    26. int main() {
    27. User a(1), b(2), c(3);
    28. Group obj(a, b, c);
    29.  
    30. obj.remove(a);
    31.  
    32. return 0;
    33. }