C++ compile error
Nathan Vidican
nvidican at wmptl.com
Fri Dec 16 10:04:59 PST 2005
Giorgos Keramidas wrote:
> On 2005-12-16 23:09, David Miao <davmiao at gmail.com> 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)
>
>
>>==quote of hello world code==
>>#include <iostream>
>>
>>int main()
>>{
>> cout << "Hello World!" << endl;
>>
>> return 0;
>>}
>>== end of quote==
>
>
> You have to add a line like this:
>
> using namespace std;
>
> at the toplevel of your sources. The example then works:
>
> keramida at flame[18:51]/tmp$ CC hello.C
> keramida at flame[18:52]/tmp$ ./a.out
> Hello World!
> keramida at flame[18:52]/tmp$ diff -u hello.C.orig hello.C
> --- hello.C.orig Fri Dec 16 18:51:26 2005
> +++ hello.C Fri Dec 16 18:51:58 2005
> @@ -1,5 +1,7 @@
> #include <iostream>
>
> +using namespace std;
> +
> int main()
> {
> cout << "Hello World!" << endl;
> keramida at flame[18:52]/tmp$
>
> On 2005-12-16 10:31, Nathan Vidican <nvidican at wmptl.com> wrote:
>
>>gcc assumes a '.C' file is ANSI C, not C++, try:
>>mv hello.C hello.cpp && gcc -o hello.exe hello.cpp
>
>
> Not really. But it's a very good idea to use something that doesn't
> only differ in the case of the name from plain ANCI C, because
> transferring the files from Unix to other operating systems
> (i.e. Windows) may lose the case of the names some times :-)
>
> On 2005-12-16 10:41, "Louis J. LeBlanc" <FreeBSD at keyslapper.net> wrote:
>
>>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?
>
>
> It doesn't :-(
>
> On 2005-12-17 00:13, David Miao <davmiao at gmail.com> wrote:
>
>>Nathan,
>>
>>I'm learning c++ programming language by using "The complete c++
>>training course - second edition" (Harvey Deitel & Paul Deitel), hello
>>world is the first program in this book. I'm totally puzzled by this
>>complex language when I compile my first program. Is this book out of
>>date?
>
>
> That's a pretty old book. Judging from the sheer number of books these
> authors have listed in Amazon, I think it's pretty safe to consider it
> very out of date :(
>
>
>>This post may off topic of FreeBSD, sorry to other people...
>
>
> That's ok. The list is, after all, "for general FreeBSD questions" :)
>
>
>
If you want a GOOD book to start self-teaching C++, grab yourself 'C++ in 21
Days' it's a classic, but GREAT starter book.
--
Nathan Vidican
nvidican at wmptl.com
Windsor Match Plate & Tool Ltd.
http://www.wmptl.com/
More information about the freebsd-questions
mailing list