fork download
  1. class A {
  2. public:
  3. A() = default;
  4. A(const A&) = delete;
  5. A& operator=(const A&) = delete;
  6. };
  7.  
  8. class B{
  9. public:
  10. B(const A& a)
  11. : a{a}
  12. { }
  13. private:
  14. const A& a;
  15. };
  16.  
  17. int main()
  18. {
  19. A a{};
  20. B b{a};
  21. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cpp: In constructor ‘B::B(const A&)’:
prog.cpp:11:14: error: use of deleted function ‘A::A(const A&)’
         : a{a}
              ^
prog.cpp:4:5: error: declared here
     A(const A&) = delete;
     ^
stdout
Standard output is empty