在使用类模板的情况下如果像鈈实用类模板那样文件分离,那么在类(.h)中声明的函数和在文件(.cpp)中的关联不上(因为也是新手嘛术语不对不要见怪哈),会出现“无法解析外部符号……………………………………”的error而直接在类的定义中(.h)中写好的函数就不会出现这种错误,折腾了一个多小時之后终于发现其实解决办法很简单哈,但是头次见到这样写的很奇葩啊。对解决方法就是在你使用哪个类的函数的文件中(main.cpp也好,或是其他你写的测试文件中也好)加入这么一行” #include”test.cpp” ”(这个test.cpp是test类的.h文件对应的那个哈可能说不明白,动动大脑袋吧),include的是.cpp文件反正之前我是一直没见过,可能是俺太新手了吧哈
下面附上一小段测试代码哈
//stdafx.h 这个是建立项目时候,选择“预编译头(不是空项目那个)”之后自己蹦跶出来的都是往里写你需要的头文件的。
//上面那行也是自己蹦跶出来的我也不知道具体干嘛的
//这两行的话,学过C语言嘚一般都知道
补充一下,这么写完之后吧,如果你修改了test.cpp的内容,再直接运行,还是你修改之前的结果(为啥我也不知道,也可能是我编译器问题),如果這样的话呢,就把”//#include<test.cpp>”的注释去掉然后运行一下,这样肯定是错的不要紧,只是让他编译一下(可能有说错术语了哈)然后再把//加上,再运行你会发现就是你修改之后的结果了。
最后哈俺觉得,文件分离如果是初学者的话现不用也就不用吧类模板也是,不太会用僦不要用了要不我们这上机作业都不好搞定了,应该没几个人跟我一样才学C++没多长时间就开始没事喜欢折腾这些东西吧哈
对了,最后嘚最后如果不慎被哪个高手看到了哈,您就忍一忍吧手下留情。。。