【常见的预处理功能】 【预处理器】 编译之前执行的一段程序,可以部分地改变我们所写的程序 举个例子:当预处理器看到#include标记时就会用指定的头文件的内容代替#include 【预处理变量】 不属于命名空间std,由预处理器负责管理 当用到一个预处理变量时,预处理器会自动地将它替换为实际值。 ...
分类:
其他好文 时间:
2017-10-10 20:42:51
阅读次数:
124
C++的水比較深,之前我一直以为C++的全局变量会像其它语言一样,很easy仅仅要在头文件里,定义一个变量就可以,比方以下的test.h:#ifndef _TEST_H #define _TEST_H int a = 10; #endif我都加上头文件保护符,总应该没有多重包括的问题了吧?没想到多个 ...
分类:
编程语言 时间:
2017-06-17 11:10:02
阅读次数:
131
?? 变量和基本类型 七、枚举 枚举不但定义了整数常量集,并且还把它们聚集成组。 枚举与简单的const常量相比孰优孰劣, 通过以下一段代码。 一看便知: [cpp] view plaincopyprint? enum {input, output, append}; const int input ...
分类:
编程语言 时间:
2017-05-27 13:33:40
阅读次数:
235
1、#ifndef#define#endif头文件保护符在编译的过程中,每个.cpp文件被看成一个单独的文件来编译成单独的编译单元,#ifndef保证类的头文件在同一个.cpp文件里被多次引用后不会出现重定义问题。注意:仅仅是防止在同一个.cpp文件里被多次引用。样例:// file1.hclass...
分类:
编程语言 时间:
2016-01-09 13:45:25
阅读次数:
224
C++程序会用到的一项预处理功能是头文件保护符,头文件保护符依赖于预处理变量。预处理变量有两种状态:已定义和未定义,#define指令把一个名字设定为预处理变量,另外两个指令则分别检查某个指定的预处理变量是否已经定义:#ifdef当且仅当变量已定义的时候为真,#inndef当且仅当变量未定义时为.....
分类:
编程语言 时间:
2015-03-11 01:56:02
阅读次数:
132
本文解决multiple definition of `XX'的错误。【出于反爬虫的目的,你不是在http://blog.csdn.net/zhanh1218上看到的,肯定不是最新最全的。】关于头文件的定义中,请一定加上下面代码(此为头文件保护符):#ifndef PERSON_H_#define ...
分类:
编程语言 时间:
2015-02-04 14:23:18
阅读次数:
201
一预处理1.常见的预处理功能预处理器的主要作用就是把通过预处理的内建功能对一个资源进行等价替换,最常见的预处理有:文件包含,条件编译、布局控制和宏替换4种。文件包含:#include 是一种最为常见的预处理,主要是做为文件的引用组合源程序正文。条件编译:#if,#ifndef,#ifdef,#end...
分类:
编程语言 时间:
2015-01-27 20:06:16
阅读次数:
193
#ifndef #define #endif头文件保护符和变量的声明和定义,有例子有真相。...
分类:
编程语言 时间:
2014-08-05 00:40:28
阅读次数:
271
C++的水比较深,之前我一直以为C++的全局变量会像其他语言一样,非常简单只要在头文件中,定义一个变量即可,比如下面的test.h:#ifndef _TEST_H
#define _TEST_H
int a = 10;
#endif我都加上头文件保护符,总应该没有多重包含的问题了吧?没想到多个cpp文件引用同个头文件还是狂报错:error LNK2005 a 已经在 xx.obj中定义。又拿起...
分类:
编程语言 时间:
2014-07-28 16:22:43
阅读次数:
218
本文解决Description Resource
Path Location
Type
multiple definition of `deal_word(std::string)'
Myfunc.h /Vector_Test/src/Headers
line 30 C/C++ Problem...
分类:
编程语言 时间:
2014-06-29 23:51:07
阅读次数:
436