组件化包括三个步骤;
第一步:对函数功能进行规划,确定参数值,返回值;
第二步:对函数功能进行定义实现;
第三步:对函数进行测试驱动;
编写组件化首先在Visual—Studio组件化项目中的头文件定义string_pro.h文件,在源文件中定义string_pro.cpp和TestString_pro.cpp文件。
头文件string_pro.h用于编写函数的功能、参数、返回值。如图所示:
接下来,我们把鼠标放在函数名上点击如图所示的图标,然后点击创建“contains”的定义(在string_pro.cpp中);
系统会在string_pro.cpp中自动创建出该函数。
然后编写该函数功能即可,例如第一个函数功能:判断一个字符串中是否包含另一个字符串。我们值需要用到strstr匹配函数,判断str字符串中是否含有substr字符串,编程如下所示:
最后我们在TestString_pro.cpp文件中编写主函数测试我们的函数功能是否正确,要注意TestString_pro.cpp文件要包含string_pro.h的头文件,具体如图所示:
关于字符串的具体功能与实现代码如图所示:
编写完具体功能后重新打开一个新的VS,建立新的项目编写项目名为组件打包测试,解决方案名称为组件打包,存放位置放在刚才编写字符串组件化功能的文件位置,方便一会找到。
在源代码找那个建立一个test.cpp文件。
然后我们要把字符串项目中的string_pro.h文件与string_pro.cpp文件打包成一个静态库。鼠标右键解决方案,点击添加新建项,找到静态库创建,项目名为StaticStringLib.
创建完静态库如图所示:
然后将编写的字符串功能代码的.cpp与.h文件copy到桌面上。
将上面两个文件复制,在新建的项目中右击源文件点击添加现有项,注意打开的一定是项目所在位置,一定不要是桌面位置,然后将复制的文件粘贴在此处,点击.cpp文件添加在源文件中;头文件操作如上一样。如图所示:
StaticStringLib.不是可执行文件,它是静态库所以不能点击调试,要在StaticStringLib.cpp文件的第一句+(#include"pch.h")头文件,然后点击生成中的生成StaticStringLib.(U),修改后点击重新生成。
如果不加入这个头文件会产生如下错误。
如果是x86系统下生成后的文件在刚才保存的位置找到组件打包中Debug文件夹,里面就有生成的StaticStringLib.lib文件;如果是在x64的系统下生成后的文件在组件打包中x64文件夹中的Debug文件就有StaticStringLib.lib文件
然后把string_pro.h与StaticStringLib.lib文件复制到测试应用项目的源文件中,在测试函数头+(#include“string_pro.h”)即可使用。