游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3828|回复: 9

问个C++的问题。

[复制链接]

6

主题

49

帖子

57

积分

注册会员

Rank: 2

积分
57
发表于 2008-8-7 09:11:00 | 显示全部楼层 |阅读模式
同一个C++工程里面包含多个CPP文件,这些文件里的对象是可以相互调用还是互不相干?他们是如何结合为一个整体?

7

主题

29

帖子

29

积分

注册会员

Rank: 2

积分
29
发表于 2008-8-9 00:32:00 | 显示全部楼层 |阅读模式
我用Dev C/C++和Code:Blocks的时候
加入的cpp文件都会自动被加到一起编译,弄得我想设置常数都不方便,最后全撤掉用include加近来

2

主题

330

帖子

1720

积分

金牌会员

Rank: 6Rank: 6

积分
1720
发表于 2008-8-7 13:02:00 | 显示全部楼层

Re:问个C++的问题。

编译器干的

0

主题

386

帖子

400

积分

中级会员

Rank: 3Rank: 3

积分
400
QQ
发表于 2008-8-7 13:08:00 | 显示全部楼层

Re:问个C++的问题。

C++里有头文件的概念,#include ""
用这个预编指令把别的头文件引用就可以了.
例如:
a.h的内容为
int Plus(int a,int b)
{
int c=a+b;
return c;
}

Main.cpp的内容
#include "a.h"
int main()
{
int a;
a=Plus(10,20);
std::cout<<a;endl;
}

这样main.cpp中的main函数就调用了a.h中的Plus函数.
#include是在编译器编译之前进行的,编译时就用a.h中的内容替换#include "a.h"
而编译的内容为
int Plus(int a,int b)
{
int c=a+b;
return c;
}
int main()
{
int a;
a=Plus(10,20);
std::cout<<a;endl;
}
这样了.

56

主题

758

帖子

768

积分

高级会员

Rank: 4

积分
768
发表于 2008-8-7 15:40:00 | 显示全部楼层

Re:问个C++的问题。

拜托楼上,很简单的问题弄这么复杂,汗....

2

主题

14

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2008-8-7 21:26:00 | 显示全部楼层

Re:问个C++的问题。

1.在你要使用A类的 B类里引入A的头文件
2.建立A的对象或者对象指针 调用A的公有成员.他们就联系起了

2

主题

429

帖子

435

积分

中级会员

Rank: 3Rank: 3

积分
435
发表于 2008-8-8 17:21:00 | 显示全部楼层

Re:问个C++的问题。

每个cpp都是一个独立的编译单元,编译器只会编译cpp,如果包含其它头文件,编译器才会引入相应的其它内容。

所以可以看作使用头文件来“结合”。

29

主题

475

帖子

483

积分

中级会员

Rank: 3Rank: 3

积分
483
发表于 2008-8-8 22:50:00 | 显示全部楼层

Re:问个C++的问题。

我原来是用另外一个CPP声明,函数可以,但是类就不行了,更别说静态方法,老是说找不到,原来还可以放到头文件里面哈。。我一直以为头文件是声明宏和函数结构的。。哈哈

0

主题

7

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2008-8-11 11:34:00 | 显示全部楼层

Re:问个C++的问题。

头文件

3

主题

137

帖子

151

积分

注册会员

Rank: 2

积分
151
QQ
发表于 2008-8-21 12:00:00 | 显示全部楼层

Re:问个C++的问题。

推荐<C++语言的设计和演化>, 里面有关于C++为什么设计为头文件和cpp文件的论述.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-21 14:29

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表