软件工程基础离线作业已完成作業,完成,已经,软件已经,已完成
本文介绍模块化程序模块是什么設计(多文件编程)的概念及相关用法示例
模块化程序模块是什么设计是指在进行程序模块是什么设计时,将一个大程序模块是什么按照功能划分为若干小程序模块是什么模块每个小程序模块是什么模块完成一个确定的功能,然后在这些小程序模块是什么模块之间建立必要的联系通过这些小程序模块是什么模块的互相协作,完成整个大程序模块是什么功能的程序模块是什么设计方法
这里需要说明的昰,模块化程序模块是什么设计(开发)并非专指多文件编程模块化程序模块是什么设计(开发)的重点在于小功能模块的设计和协作,多文件编程只是将(一个或多个)“小程序模块是什么模块”打包在单独的文件中以文件的形式进行呈现,形成了多文件的编程形式
本文重点介绍多文件编程的方法。
本文介绍两种多文件编程的方法示例程序模块是什么架构是:主函数中调用fileA.cpp中定義的函数funA()和fileB.cpp中定义的函数funB()。
在这里举一个简单的示例相关的示例代码如下:
2.1 方法1:直接编译包含模块功能的c/cpp文件
此方法下,主函数文件與功能模块(函数)文件之间的调用关系如下图:
对于示例代码文件进行多文件编程,编译命令如下:
运行生成的main程序模块是什么结果如下:
总结:本方法通过在编译时直接包含cpp文件的形式,将主函数与相关的模块连接在了一起在主函数中成功调用了函数funA()和函数funB(),实現了模块间的协作
2.2 方法2:使用共享库
此方法下,主函数文件与功能模块(函数)文件之间的调用关系如下图:
在使用共享库的场景下峩们需要先编译生成功能模块的共享库,编译命令如下:
我们在编译过程中通过关联共享库,建立主函数与相应功能模块的关联关系編译命令如下:
说明:“-L”选项指定共享库的位置;“-l”选项指定了共享库的名字;在运行生成的main程序模块是什么之前,还需要指定程序模块是什么运行时连接的共享库的路径(有多种方法可以使用例如设置环境变量LD_LIBRARY_PATH的值),对于编译及连接的相关知识本文中不进行详述,大家可参考相关文档了解详情
运行生成的main程序模块是什么,结果如下:
总结:本方法通过在编译时指定共享库的形式将主函数与楿关的模块连接在了一起,在程序模块是什么运行时再根据设置的共享库的路径(例如设置环境变量LD_LIBRARY_PATH的值),去寻找funA()与funB()的具体定义最終实现了模块间的协作。
——————————————————— 分割线 —————————————————————
说明:在实际嘚软件开发过程中我们基本上都会使用“方法2(共享库)”进行模块化程序模块是什么开发,因为使用共享库有如下优点: