怎样在VC下编译“带自己建立的头文件”的cpp程序?

kaphoon 2003-10-16 01:36:12
怎样在VC下编译“带自己建立的头文件”的cpp程序?
在头文件中怎么加宏?
我按照<C++大学教程>上讲的那样,无法编译,提示:找不到头文件!
...全文
117 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
sham2k 2003-10-22
  • 打赏
  • 举报
回复
tools->options->directory
include files 添你头文件目录
danpianji2002 2003-10-19
  • 打赏
  • 举报
回复
建立工程吧
pxwzd123 2003-10-18
  • 打赏
  • 举报
回复
先连接,再编译,应该就可以了
Yimr 2003-10-17
  • 打赏
  • 举报
回复
对对,用#include " " 记得不要用 <>
另外要在工程中添加这个头文件
tackdhly 2003-10-17
  • 打赏
  • 举报
回复
原因可以有 个。
一,你可能没有用 #include “…”//上面的说对对。<>,""的用法都是引用,但<>只能引用标
准库,""可以引用自己写的头文件。
二,你没有在编译器中建这个头文件的工程 //没有工程文件编译器会找不到这个头文件的。
davidwoo 2003-10-17
  • 打赏
  • 举报
回复
贴出来
leebuilder 2003-10-17
  • 打赏
  • 举报
回复
你得在VC下建立一个工程,然后在向里添加自己得头文件,这样就可以了。必须使个工程!!
xxking 2003-10-17
  • 打赏
  • 举报
回复
up
oyd 2003-10-17
  • 打赏
  • 举报
回复
错误信息是不是说找不到预编译头?如果是那样,#include "stdafx.h"
kaphoon 2003-10-17
  • 打赏
  • 举报
回复
pxwzd123(tajore):我就这么做的,但不行
pxwzd123 2003-10-17
  • 打赏
  • 举报
回复
如果是文件头写成#include <my.h>的话,改成#include"my.h"就可以了。
因为 <>只从include文件夹中找库文件的
zoohoo 2003-10-16
  • 打赏
  • 举报
回复
在本地路径下或是在include file中申明这个路径,还有如果用户mfc需要包涵预编译的头StdAfx.h
编译头文件今天在改一个很大的程序,慢慢看,慢慢改。突然发现一个.c文件,里面什么也没有,就几个头文件,我一看,我靠,这不是把简单的问题搞复杂了吗,随手删掉那个c文件。结果不能编译了,我靠:fatal error C1083: Cannot open precompiled header file: \'Debug/v13_3.pch\':No such file or directory怎么rebuild all都不行。上网查了一下,才搞懂了:----------------总结------如果工程很大,头文件很多,而有几个头文件又是经常要用的,那么1。把这些头文件全部写到一个头文件里面去,比如写到preh.h2。写一个preh.c,里面只一句话:#include "preh.h"3。对于preh.c,在project setting里面设置creat precompiled headers,对于其他.c文件,设置use precompiled header file//哈哈我试了一下,效果很明显,不用precompiled header,编译一次我可以去上个厕所,用precompiled header,编译的时候,我可以站起来伸个懒腰,活动活动就差不多啦---------转载的文章----------预编译头的概念:所谓的预编译头就是把一个工程中的那一部分代码,预先编译好放在一个文件里(通常是以.pch为扩展名的),这个文件就称为预编译头文件这些预先编译好的代码可以是任何的C/C++代码--------甚至是inline的函数,但是必须是稳定的,在工程开发的过程中不会被经常改变。如果这些代码被修改,则需要重新编译生成预编译头文件。注意生成预编译头文件是很耗时间的。同时你得注意预编译头文件通常很大,通常有6-7M大。注意及时清理那些没有用的预编译头文件。也许你会问:现在的编译器都有Time stamp的功能,编译器在编译整个工程的时候,它只会编译那些经过修改的文件,而不会去编译那些从上次编译过,到现在没有被修改过的文件。那么为什么还要预编译头文件呢?答案在这里,我们知道编译器是以文件为单位编译的,一个文件经过修改后,会重新编译整个文件,当然在这个文件里包含的所有头文件中的东西(.eg Macro, Preprocesser )都要重新处理一遍。VC的预编译头文件保存的正是这部分信息。以避免每次都要重新处理这些头文件。预编译头的作用:根据上文介绍,预编译头文件的作用当然就是提高便宜速度了,有了它你没有必要每次都编译那些不需要经常改变的代码。编译性能当然就提高了。预编译头的使用:要使用预编译头,我们必须指定一个头文件,这个头文件包含我们不会经常改变的代码和其他的头文件,然后我们用这个头文件来生成一个预编译头文件(.pch文件)想必大家都知道 StdAfx.h这个文件。很多人都认为这是VC提供的一个“系统级别”的,编译的一个头文件。其实不是的,这个文件可以是任何名字的。我们来考察一个典型的由AppWizard生成的MFC Dialog Based 程序的预编译头文件。(因为AppWizard会为我们指定好如何使用预编译头文件,默认的是StdAfx.h,这是VC起的名字)。我们会发现这个头文件里包含了以下的头文件:#include // MFC core and standard components#include // MFC extensions#include // MFC Automation classes#include // MFC support for Internet Explorer 4Common Controls#include
vc6.0 使用教程详解.doc,大小仅 284KB,但作为一个 vc6.0 的入门教程,本书就足够了。 内容预览: 你首先要打开VC6.0界面,一般用得较多的是Win32控制台应用程序(源程序,扩展名.cpp), 步骤是:(先工程—后文件—编译—连接---运行) 1,建立一个工程,“文件”——“新建”,出现下面界面: 选择“Win32 Console Application”(控制台应用程序,左边倒数第三个),命名工程名称,选择保存位置, 点击“确定”,进入下一步,看到如下提示界面: 建立一个空工程,对应其他需要的你一可以建立别的工程;点击“完成”,之后: 显示你创建的工程的信息。 2,再在有一个的工程的条件下,我们再建立一个源文件; “文件”——“新建”(快捷键Ctri+N),出现: 建立源文件,选择“C++ Source ”,一般都是建立这种文件的(适用在当文件中适用)如果要建立头文件的话,选择“C/C++ Header File”,(适用在多文件工程中使用)命名,文件名称,点击“确定”,之后: 进入编辑区,在主界面编写代码:如下编写完之后呢: 可以按编译按钮 调试程序,看看有没有错误,有的话改正,没有的话就可以再按连接按钮 检查连接(多文件工程时常用,检查文件间是否正常连接),最后,点运行按钮 ,就可以运行了。 如果是您有代码如:cpp文件,或 .h 文件,想添加都VC6.0里来测试的话,可以这样做: 首先,要理解一下 文件扩展名为:cpp和.h 文件扩张名是.h,代表的是头文件,一般是书写一些函数原型,以及一些在整个程序中常用到的结构体,频繁使用的函数说明,定义等等; 文件扩张名为,cpp的,是C++中的源文件,也是最常用到的文件,每建立一个工程都要至少一个源文件(至少要有一个函数入口——主函数main() ),包含了核心代码; 建立与运行说明:(以VC 6.0编译器为例,其他编译器类似) 首先,打开VC 6.0编译环境; 在菜单栏——文件(的下拉菜单中选择“新建”),在弹出的选择窗口中,选Win32 Console Application(控制台应用程序) ,在填写工程名称,选择一个程序保存路径,点击“完成”,查看工程信息。在点击“确定”,就建立一个简单的工程了。 再点击左边的工程信息右下角的“FileView”选项;可以看到你新建的工程,再双击你新建的工程名 可以查看工程的信息。 在双击工程文件,在这里是 777.files,可以看到该工程的包含的文件 其中,Source Files 为包含所有工程的源文件 Header Files 为包含所有工程的头文件 在源文件选项“Source Files ”,右键单击中的“添加目录到工程”,添加你要打开的扩展名为 .cpp的源文件。在头文件选项“ Header Files”,右键单击中的“添加目录到工程”,添加你要打开的扩展名为 . h的头文件。添加完你所有的头文件和源文件之后,检查一下是否添加完毕,之后就可以编译了。 其中第一个按钮 为编译按钮,可以找出工程的错误信息,有错误修改,没错误就可以跳到连接 ,编译右边的按钮 ,即第三个按钮(多文件工程一定要连接,查看文件是否准确相连接) 当编译,连接都没有错误时,可以按运行按钮 ,即可以运行了。

64,665

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧