fatal error LNK1169: 找到一个或多个多重定义的符号
发现最近跟编译出现怪问题特别结缘,上个星期被搞得不行啦!但是现在却发现自己却爱上了他,起码现在遇到总比以后遇到好吧!今天遇到的问题是fatal error LNK1169: 找到一个或多个多重定义的符号。
起先我以为和我以前遇到的定义了多个头文件类似,于是就把那些改成预编译形式,可惜还是不行;后来就度了一下。发现有不少人的帖子。其中有一个虽然是解决2005中出现的,但是我还是拿来试了一下,发现竟然可以,但是不明白。帖子上讲
在项目->属性->链接器->命令行->附加选项中加 /force
/force 表示内联的意思;但这种方法不怎么好
后来又有人说,估计是因为头文件的原因,其实也不是很明白。但是也不能折磨自己,就这样想:在头文件中定义变量的话,要么是类成员变量要么就定义成局部extern的或者静态变量static