fork download
  1.  
  2. #include <string>
  3. #include <iostream>
  4.  
  5. class A
  6. {
  7. public:
  8. A() = default;
  9. A(const A&) = default;
  10.  
  11. A(const std::string& str)
  12. : m_str(str)
  13. {
  14. }
  15. A(const A& rA, std::string str) : A(rA)
  16. {
  17. m_str += str;
  18. }
  19.  
  20. const std::string& GetStr() const
  21. {
  22. return m_str;
  23. }
  24. private:
  25. std::string m_str = "default value";
  26. };
  27.  
  28.  
  29.  
  30. int main(int argc, char* argv[])
  31. {
  32. A a;
  33. std::cout << a.GetStr() << std::endl;
  34.  
  35. A aa("aa");
  36. std::cout << aa.GetStr() << std::endl;
  37.  
  38. A aaa(aa, "a-pops");
  39. std::cout << aaa.GetStr() << std::endl;
  40.  
  41. return 0;
  42. }
  43.  
  44.  
Success #stdin #stdout 0s 3456KB
stdin
Standard input is empty
stdout
default value
aa
aaa-pops