当前位置: 首页 > news >正文

昆山市建设监察大队网站自媒体视频剪辑培训班

昆山市建设监察大队网站,自媒体视频剪辑培训班,有没有可以做翻译的网站,青岛胶南市城乡建设局网站目录 静态库 编写静态库 使用静态库 方案一 方案二 动态库 编写动态库 使用动态库 方案一 方案二 方案三 总结 静态库 静态库是在编译时将库的代码合并到最终可执行程序中的库。静态库的优势是在编译时将所有代码包含在程序中#xff0c;可以使程序独立运行…目录 静态库 编写静态库 使用静态库 方案一 方案二 动态库 编写动态库 使用动态库 方案一 方案二 方案三 总结 静态库 静态库是在编译时将库的代码合并到最终可执行程序中的库。静态库的优势是在编译时将所有代码包含在程序中可以使程序独立运行但增加了可执行文件的大小。 静态库需要.lib文件和一个.h文件程序正常使用.h的函数在链接选项里加入.lib文件或者#pragma comment手动加载 编写静态库 创建空项目添加文件右击项目属性修改生成目标为lib库 //print.h #pragma once #include iostream void print(); //print.cpp #include print.h void print() {     std::cout 静态库测试 std::endl; } 使用静态库 lib需要.h文件和.lib文件如果没有把这两个文件复制到对应项目文件夹中的话就需要配置包含目录和库目录。 方案一 通过配置项目属性的方式进行添加到指定项目中去使用。 包含目录 .h文件目录 库目录 .lib文件目录 链接输入增加lib #include iostream #include print.h  //切记需要包含头文件 int main() {     print();     return 0; } 方案二 通过#pragma直接导入lib文件的方式但使用这种方式如果lib文件较多的话就会显得代码冗长。 #include iostream #include print.h  //切记需要包含头文件 #pragma comment(lib,./print_func.lib) int main() {     print();     return 0; } 动态库 动态库是在运行时加载到内存中的库。它们可以被多个程序共享减少了每个程序的内存占用和代码重复。动态库的优势是可在运行时更新库但需要确保正确的库版本和依赖关系。 编写动态库 创建空项目添加文件右击项目属性修改生成目标为dll库,操作方式和lib库方式相同。但编写dll函数需要_declspec(dllexport)特殊声明。 在 Windows 系统上当你将一个函数或符号定义为 __declspec(dllexport) 时这意味着该函数或符号将被标记为可从动态链接库DLL中导出。这使得其他程序或模块能够通过使用 __declspec(dllimport) 来引用该函数或符号。需要注意的是__declspec(dllexport) 是特定于 Microsoft Visual C 编译器的语法扩展。在其他平台和编译器上通常使用不同的导出和导入方式。因此如果你的代码需要在跨平台环境下移植或兼容其他编译器建议查阅相关文档或使用更通用的跨平台导出方式如使用预处理器宏或导出表等。 //Add.h #pragma once #include iostream _declspec(dllexport) int add(int a, int b); //Add.cpp #include Add.h int add(int a, int b) {     return a b; } 使用动态库 dll需要.h文件、.lib文件以及.dll文件如果没有把这三个文件复制到对应项目文件夹中的话就需要配置包含目录和库目录。 方案一 将.h文件、.lib文件以及.dll文件置入工程所在目录然后添加对应的.h头文件类似配置第三方库的方式使用。 #include iostream #include Add.h #pragma comment(lib,add_func.lib) int main() {     std::cout sum: add(1, 2) std::endl;     return 0; } 方案二 WIN32 API函数LoadLibrary、GetProcAddress装载使用这种载入方法不需要.lib文件和.h头文件只需要.dll文件即可将.dll文件置入工程目录中 #include iostream #include windows.h typedef int(*DLLFunc)(int,int); int main() {     DLLFunc func;     HINSTANCE lib LoadLibrary(Ladd_func.dll);     if (lib nullptr)     {         FreeLibrary(lib);         return 0;     }     func (DLLFunc)GetProcAddress(lib, add);     if (func nullptr)     {         FreeLibrary(nullptr);         return 0;     }     std::coutfunc(1,2)std::endl;     return 0; } 方案三 配置包含目录和库目录把dll文件放到.exe文件所在目录下点击exe就可运行。 总结 本篇文章主要介绍了如何封装和调用动态库和静态库静态库是在链接时使用的动态库是在运行时使用的dll相比于lib来说多了一个.dll文件调用静态库和动态库最简单的方法就是把对应文件放到文件目录中在调用时include头文件使用#pragma comment(lib,.lib文件名),便可。若文件较多为避免代码冗长则可配置包含目录、库目录以及附加依赖项从而可以直接使用。
http://www.w-s-a.com/news/380714/

相关文章:

  • wordpress做门户seo培训价格
  • 百度关键词优化软件如何wordpress站点地图优化
  • 使用cnnic证书的网站营销公司有哪些
  • 做电子杂志用什么网站如何将网站生成二维码
  • 三点水网站建设洛阳市建设厅网站
  • 哪家做网站便宜网络推广培训吧
  • 网站怎么做支付非凡软件站
  • 北京谁会做网站开发熊岳网站怎么做
  • 南阳哪有做网站公司定制网站本地企业
  • 平板上做网站的软件邀约网站怎么做请柬
  • 企业网站成品源码邯郸做网站流程
  • 建设网站需要什么技术两个网站放在同一个服务器 备案
  • 焦作做网站推广天津网络关键词排名
  • siteserver cms网站访问量挂机宝可以做网站吗
  • 普宁网站建设公司网络商城设计
  • wordpress主题 外贸网站wordpress安装后输入帐号登不进去
  • 陕西省西安市建设局网站永登网站设计与建设
  • 广东网站设计招工.免费咨询贷款
  • 做试题网站在线做c 题的网站
  • 青岛发现51例阳性南京专业网站优化公司
  • 南昌建站如何上wordpress
  • 洛阳网站建设优惠公司建筑企业上市公司有哪些
  • 营销型网站建设营销型网站建设手机网站设计需要学什么
  • 在线视频网站 一级做爰片南通网站建设找哪家
  • 网站优化文章东莞专业网站建设价钱
  • 哈尔滨网页设计网站模板泰兴建设局网站
  • 响应式网站设计公司报纸做垂直门户网站
  • 陕西旭泽建设有限公司网站企业网站建设软件需求分析
  • 上海公司网站建设方案中企动力西安分公司
  • dedecms网站后台怎样才能上百度