fork download
  1. #include <iostream>
  2.  
  3. struct s
  4. {
  5. int i;
  6.  
  7. s(int j)
  8. : i(j)
  9. { }
  10.  
  11. };
  12.  
  13.  
  14. std::ostream& operator<<(std::ostream& outputstream, s& arr)
  15. {
  16. outputstream << arr.i << "\n";
  17. return outputstream;
  18. }
  19.  
  20. s operator+(const s& a, const s& b)
  21. {
  22. return s(a.i + b.i);
  23. }
  24.  
  25. int main()
  26. {
  27. s m(1);
  28. s n(2);
  29.  
  30. std::cout << (m + n);
  31. return 0;
  32. }
  33.  
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cpp: In function 'int main()':
prog.cpp:30:24: error: cannot bind 'std::ostream' lvalue to 'std::basic_ostream<char>&&'
/usr/lib/gcc/i686-pc-linux-gnu/4.5.1/../../../../include/c++/4.5.1/ostream:579:5: error:   initializing argument 1 of 'std::basic_ostream<_CharT, _Traits>& std::operator<<(std::basic_ostream<_CharT, _Traits>&&, const _Tp&) [with _CharT = char, _Traits = std::char_traits<char>, _Tp = s]'
stdout
Standard output is empty