C++ compile error

Louis J. LeBlanc FreeBSD at keyslapper.net
Fri Dec 16 07:45:50 PST 2005


On Fri, December 16, 2005 10:33 am, Nathan Vidican wrote:
> David Miao wrote:
>> Dear list,
>>
>> I try to compile a hello world C++ program in FreeBSD 6.0, but get an
>> error as below:
>>
>> [dm at ORION ~/cpp]% CC -o hello hello.C
>> hello.C: In function `int main()':
>> hello.C:5: error: `cout' undeclared (first use this function)
>> hello.C:5: error: (Each undeclared identifier is reported only once
>> for each function it appears in.)
>> hello.C:5: error: `endl' undeclared (first use this function)
>>
>> I noticed that "iostream" file is located in
>> "/usr/include/c++/3.4/iostream", I guess my CC compiler cannot find
>> this head file. Is it true? And how can I fix this problem? Your
>> advice is appreciated. Thanks in advance.
>>
>> ==quote of hello world code==
>> #include <iostream>
>>
>> int main()
>> {
>>     cout << "Hello World!" << endl;
>>
>>     return 0;
>> }
>> == end of quote==
>>
>> Regards,
>> David
>> _______________________________________________
>> freebsd-questions at freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
>> To unsubscribe, send any mail to
>> "freebsd-questions-unsubscribe at freebsd.org"
>>
>>
>>
>
> Also, noticed your code is flawed, you never used a namespace, nor
> explicitly stated one. cout is part of the 'std' namespace, so either
> ' using namespace std;' for global/local use of namespace, OR do
> 'std::cout <<' instead. Try the hello.cpp I sent you in the last email,
> that one should work for ya :)

I'm not nearly as adept with C++ as I am with C, Perl, and a few other
geek tools, but doesn't C++ default to the std namespace if none is
specified?

Perhaps this is a compiler specific behavior?

Just curious.

Lou

-- 
Louis LeBlanc                 FreeBSD at keyslapper.net
Fully Funded Hobbyist,   KeySlapper Extrordinaire :þ
http://www.keyslapper.net                       Ô¿Ô¬



More information about the freebsd-questions mailing list