I have problems compiling some code that perfectly runs in VS.Net in
the G++. Here is what I got:
MyClass a;
MyClass b;
//assign values to a and b
.......
//print the sum of those objects
cout << "the sum is " << (a + b) << endl;
It work WS.Net fine but in G++ i have to write like this:
MyClass temp;
temp = a + b;
cout << "the sum is " << temp << endl;
The overloaded + operator has this signature and returns a copy of new
object.
MyClass operator +( const MyClass &a);
Thanks, in advance!
P.S. These are the error messages that I get
distance.cpp:21 8:2: warning: no newline at end of file
In file included from dist_test.cpp:3 :
distance.h:72:7 : warning: no newline at end of file
dist_test.cpp: In function `int main()':
dist_test.cpp:6 5: no match for `std::basic_ost ream<char,
std::char_trait s<char>
& << Distance' operator
/usr/include/c++/3.2.2/bits/ostream.tcc:55: candidates are:
std::basic_ostr eam<_CharT, _Traits>& std::basic_ostr eam<_CharT,
_Traits>::opera tor<<(std::basi c_ostream<_Char T,
_Traits>&(*)(st d::basic_ostrea m<_CharT, _Traits>&)) [with _CharT =
char,
_Traits = std::char_trait s<char>]
/usr/include/c++/3.2.2/bits/ostream.tcc:77:
std::basic_ostr eam<_CharT, _Traits>& std::basic_ostr eam<_CharT,
_Traits>::opera tor<<(std::basi c_ios<_CharT,
_Traits>&(*)(st d::basic_ios<_C harT, _Traits>&)) [with _CharT =
char, _Traits
= std::char_trait s<char>]
/usr/include/c++/3.2.2/bits/ostream.tcc:99:
std::basic_ostr eam<_CharT, _Traits>& std::basic_ostr eam<_CharT,
_Traits>::opera tor<<(std::ios_ base&(*)(std::i os_base&)) [with
_CharT = char,
_Traits = std::char_trait s<char>]
/usr/include/c++/3.2.2/bits/ostream.tcc:171 :
std::basic_ostr eam<_CharT, _Traits>& std::basic_ostr eam<_CharT,
_Traits>::opera tor<<(long int) [with _CharT = char, _Traits =
std::char_trait s<char>]
/usr/include/c++/3.2.2/bits/ostream.tcc:208 :
std::basic_ostr eam<_CharT, _Traits>& std::basic_ostr eam<_CharT,
_Traits>::opera tor<<(long unsigned int) [with _CharT = char,
_Traits =
std::char_trait s<char>]
/usr/include/c++/3.2.2/bits/ostream.tcc:146 :
std::basic_ostr eam<_CharT, _Traits>& std::basic_ostr eam<_CharT,
_Traits>::opera tor<<(bool) [with _CharT = char, _Traits =
std::char_trait s<char>]
/usr/include/c++/3.2.2/ostream:104:
std::basic_ostr eam<_CharT,
_Traits>& std::basic_ostr eam<_CharT, _Traits>::opera tor<<(short
int) [with
_CharT = char, _Traits = std::char_trait s<char>]
/usr/include/c++/3.2.2/ostream:115:
std::basic_ostr eam<_CharT,
_Traits>& std::basic_ostr eam<_CharT, _Traits>::opera tor<<(short
unsigned
int) [with _CharT = char, _Traits = std::char_trait s<char>]
/usr/include/c++/3.2.2/ostream:119:
std::basic_ostr eam<_CharT,
_Traits>& std::basic_ostr eam<_CharT, _Traits>::opera tor<<(int)
[with _CharT
= char, _Traits = std::char_trait s<char>]
/usr/include/c++/3.2.2/ostream:130:
std::basic_ostr eam<_CharT,
_Traits>& std::basic_ostr eam<_CharT, _Traits>::opera tor<<(unsigned
int)
[with _CharT = char, _Traits = std::char_trait s<char>]
/usr/include/c++/3.2.2/bits/ostream.tcc:234 :
std::basic_ostr eam<_CharT, _Traits>& std::basic_ostr eam<_CharT,
_Traits>::opera tor<<(long long int) [with _CharT = char, _Traits =
std::char_trait s<char>]
/usr/include/c++/3.2.2/bits/ostream.tcc:272 :
std::basic_ostr eam<_CharT, _Traits>& std::basic_ostr eam<_CharT,
_Traits>::opera tor<<(long long unsigned int) [with _CharT = char,
_Traits =
std::char_trait s<char>]
/usr/include/c++/3.2.2/bits/ostream.tcc:298 :
std::basic_ostr eam<_CharT, _Traits>& std::basic_ostr eam<_CharT,
_Traits>::opera tor<<(double) [with _CharT = char, _Traits =
std::char_trait s<char>]
/usr/include/c++/3.2.2/ostream:145:
std::basic_ostr eam<_CharT,
_Traits>& std::basic_ostr eam<_CharT, _Traits>::opera tor<<(float)
[with
_CharT = char, _Traits = std::char_trait s<char>]
/usr/include/c++/3.2.2/bits/ostream.tcc:323 :
std::basic_ostr eam<_CharT, _Traits>& std::basic_ostr eam<_CharT,
_Traits>::opera tor<<(long double) [with _CharT = char, _Traits =
std::char_trait s<char>]
/usr/include/c++/3.2.2/bits/ostream.tcc:348 :
std::basic_ostr eam<_CharT, _Traits>& std::basic_ostr eam<_CharT,
_Traits>::opera tor<<(const void*) [with _CharT = char, _Traits =
std::char_trait s<char>]
/usr/include/c++/3.2.2/bits/ostream.tcc:120 :
std::basic_ostr eam<_CharT, _Traits>& std::basic_ostr eam<_CharT,
_Traits>::opera tor<<(std::basi c_streambuf<_Ch arT, _Traits>*) [with
_CharT =
char, _Traits = std::char_trait s<char>]
distance.h:69: std::ostream& operator<<(std: :ostream&,
Distance&)
/usr/include/c++/3.2.2/ostream:251:
std::basic_ostr eam<char,
_Traits>& std::operator<< (std::basic_ost ream<char, _Traits>&, const
unsigned
char*) [with _Traits = std::char_trait s<char>]
/usr/include/c++/3.2.2/ostream:246:
std::basic_ostr eam<char,
_Traits>& std::operator<< (std::basic_ost ream<char, _Traits>&, const
signed
char*) [with _Traits = std::char_trait s<char>]
/usr/include/c++/3.2.2/bits/ostream.tcc:622 :
std::basic_ostr eam<char, _Traits>&
std::operator<< (std::basic_ost ream<char,
_Traits>&, const char*) [with _Traits = std::char_trait s<char>]
/usr/include/c++/3.2.2/bits/ostream.tcc:572 :
std::basic_ostr eam<_CharT, _Traits>&
std::operator<< (std::basic_ost ream<_CharT, _Traits>&, const char*)
[with
_CharT = char, _Traits = std::char_trait s<char>]
/usr/include/c++/3.2.2/ostream:227:
std::basic_ostr eam<char,
_Traits>& std::operator<< (std::basic_ost ream<char, _Traits>&,
unsigned char)
[with _Traits = std::char_trait s<char>]
/usr/include/c++/3.2.2/ostream:222:
std::basic_ostr eam<char,
_Traits>& std::operator<< (std::basic_ost ream<char, _Traits>&,
signed char)
[with _Traits = std::char_trait s<char>]
/usr/include/c++/3.2.2/bits/ostream.tcc:500 :
std::basic_ostr eam<char, _Traits>&
std::operator<< (std::basic_ost ream<char,
_Traits>&, char) [with _Traits = std::char_trait s<char>]
/usr/include/c++/3.2.2/ostream:211:
std::basic_ostr eam<_CharT,
_Traits>& std::operator<< (std::basic_ost ream<_CharT, _Traits>&,
char) [with
_CharT = char, _Traits = std::char_trait s<char>]
dist_test.cpp:1 11:15: warning: no newline at end of file