编译
candy060403
这个作者很懒,什么都没留下…
展开
-
编译过程的一些小知识——内部连接与外部连接
首先,我们来了解下定义:内部连接:如果一个名称对编译单元(.cpp)来说是局部的,在链接的时候其他的编译单元无法链接到它。外部连接:如果一个名称对编译单元来说不是局部的,而在链接的时候其他的编译单元可以访问它,也就是说它可以和别的编译单元交互。 通过对LIB与DLL的讲解,我们可以更方便的理解内部连接与外部连接。我们了解了一个编译单元(.cpp)编译成obj转载 2012-03-31 09:33:07 · 13819 阅读 · 0 评论 -
编译过程的一些小知识——LIB与DLL的区别
相信很多人都用过VC6.0与Visual Studio系列产品。也有很多牛B人士用它们创造过很人的神话,铸就许多美丽的传说。那你们知道为何你能用它创始出那么多的奇迹,这是你一个人的成功?你是否关心过你是如何能动态的链接它给你提供的内库,它是如何控制你的IO流的?为何C++的语法是这么规定的,它又是如何实现这些语法的呢?本文和接下来的文章很肤浅的介绍了这些东西转载 2012-03-31 09:31:35 · 1003 阅读 · 0 评论 -
define 用法详解
1.简单的define定义#define MAXTIME 1000一个简单的MAXTIME就定义好了,它代表1000,如果在程序里面写if(i编译器在处理这个代码之前会对MAXTIME进行处理替换为1000。这样的定义看起来类似于普通的常量定义CONST,但也有着不同,因为define的定义更像是简单的文本替换,而不是作为一个量来使用,这个问题在下面反映的尤转载 2012-03-31 09:30:33 · 1226 阅读 · 0 评论 -
C++头文件重复包含的解决方案
一、#pragma once(比较常用)这是一个比较常用的指令,只要在头文件的最开始加入这条指令就能够保证头文件被编译一次#pragma once用来防止某个头文件被多次include,#ifndef,#define,#endif用来防止某个宏被多次定义。#pragma once是编译相关,就是说这个编译系统上能用,但在其他编译系统不一定可以,也就是说移植性差,不过现在基本转载 2012-03-31 09:28:34 · 3191 阅读 · 0 评论