ITPub博客

首页 > > > c++ constructor, copy constructor, operator =

c++ constructor, copy constructor, operator =

作者:友哥 时间:2018-08-18 18:25:00 0 删除 编辑
// list::push_back
#include <iostream>
#include <list>

class element{
private:
    int number;
public:
    element(int number){
        this->number = number;
        std::cout << "constructor used" << std::endl;
    }
    
    element(const element&){
       std::cout << "copy constructor used" << std::endl; 
    }
    element& operator=(const element& element_instance){
        std::cout << element_instance.number << "operator=" << std::endl;
        this->number = element_instance.number;
        return *this;
    }
    int get_number(){
        return this->number;
    }
    ~element(){
        std::cout << this->number << std::endl;
        this->number = 0;
        std::cout << "destructor used" << std::endl;
    }
};

int main ()
{
  std::list<element> mylist;
  int myint;

  std::cout << "Please enter some integers (enter 0 to end):\n";

  do {
    std::cin >> myint;
    element* element_instance = new element(myint);
    mylist.push_back (*element_instance);
    delete element_instance;
  } while (myint);

  //std::cout << "mylist stores " << mylist.size() << " numbers.\n";
  std::cout << "first number:" << (mylist.front().get_number()) << std::endl;

  return 0;
}

 

原文作者:;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2020-05-20

  • 博文量
    276
  • 访问量
    1000