奇怪的编译问题

软件和网站开发以及相关技术探讨
回复
xiaosai
帖子: 6
注册时间: 2009-08-10 16:23

奇怪的编译问题

#1

帖子 xiaosai » 2009-08-14 20:00

简单的c++代码
file2.h
#include <stdio.h>
20 #include <iostream>
21 using namespace std;
22 class myclass
23 {
24 public:
25 myclass();
26 virtual ~myclass();
27 void dotest();
28 };

file2.cpp
#include "file2.h"
20 myclass::myclass()
21 {
22 }
23
24 myclass::~myclass()
25 {
26
27 }
28
29 void myclass::dotest()
30 {
31 }

file1.cpp
#include <stdio.h>
2 #include "file2.h"
3 int main()
4 {
5 int i=0;
6 for(i=0;i<1;i++)
7 {
8 printf("hehe");
9 }
10
11 return 0 ;
12 }
13
14
15 int test(int a,int b)
16 {
17 //myclass me;
18 //me
19 return 0;
20 }

编译时
g++ file1.cpp file2.cpp file2.h -o file
没问题

但用
gcc file1.cpp file2.cpp file2.h -o file -lstdc++
则出现
file2.h:20:20: error: iostream: No such file or directory
file2.h:21: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘namespace’
file2.h:22: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘myclass’

why?

还有,我要查看函数文档,书上说用man 函数名。但我试了
man fork
No manual entry for fork

是还需要装什么吗?
头像
BigSnake.NET
帖子: 12522
注册时间: 2006-07-02 11:16
来自: 廣州
联系:

Re: 奇怪的编译问题

#2

帖子 BigSnake.NET » 2009-08-14 20:05

非常常见问题
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
xiaosai
帖子: 6
注册时间: 2009-08-10 16:23

Re: 奇怪的编译问题

#3

帖子 xiaosai » 2009-08-14 21:03

BigSnake.NET 写了:非常常见问题
请说?
头像
linjiework
帖子: 240
注册时间: 2009-07-07 19:52

Re: 奇怪的编译问题

#4

帖子 linjiework » 2009-08-15 13:28

用 C 编译器编译 C++ 代码,当然出问题了。

g++ 用着好好的,为啥要用 gcc 啊?
阿呆 : 天下第一呆!
回复