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

郑州网站设计见效快django网站开发实例源码

郑州网站设计见效快,django网站开发实例源码,怀化高速网站,泸州网站建设价格目录 1. 基础概念 2. 直观感受一下静态编译和动态编译的体积与依赖项目 3. VS运行时库包含哪些主要文件#xff08;从VS2015起#xff09; 4. 动态库和静态库混用的情况 5. 感谢清单 1. 基础概念 所谓的运行时库#xff08;Runtime Library#xff09;就是WINDOWS系统…目录 1. 基础概念 2. 直观感受一下静态编译和动态编译的体积与依赖项目 3. VS运行时库包含哪些主要文件从VS2015起 4. 动态库和静态库混用的情况 5. 感谢清单 1. 基础概念 所谓的运行时库Runtime Library就是WINDOWS系统给我们实现了C/C的库函数的功能提供的.LIB和.DLL文件。 其中.LIB是静态库假如我们程序用.LIB去链接的话意味着这个EXE里就包含了C/C库函数的实现运行的时候就不需要再依赖目标电脑上的运行库方便拿到其他电脑跑。缺点呢就是程序体积大。 .DLL则是动态库选择动态链接的时候EXE需要用到C/C库函数的实现的时候会去系统里面找相对应的DLL。多个程序也可以共享这一个DLL带来的好处就是节省EXE的体积但是拿到其他电脑去的话可能跑不起来报错说“找不到XXXXX.DLL” 我们用visual studio开发的时候在项目属性里面可以看到有4种运行时库可选 运行库名称链接方式其他MT静态MTd静态Debug版本MD动态MDd动态Debug版本 2. 直观感受一下静态编译和动态编译的体积与依赖项目 用vs新建一个工程简单写一个hello world的程序。 #include iostream using namespace std;int main() {cout Hello World endl;return 0; } 然后分别用静态生成和动态生成 由上面两个图片可以清晰地看出来静态编译体积大动态编译依赖多 3. VS运行时库包含哪些主要文件从VS2015起 库描述MTMTDMDMDd通用C运行时库libucrt.liblibucrtd.lib ucrt.lib ucrtbase.dll ucrtd.lib ucrtbased.dll VC运行库libvcruntime.liblibvcruntimed.lib vcruntime.lib vcruntimeversion.dll vcruntimed.lib vcruntimeversiond.dll C标准库libcpmt.liblibcpmtd.lib msvcprt.lib msvcpversion.dll msvcprtd.lib msvcpversiond.dll 初始化CRT的代码库libcmt.liblibcmtd.libmsvcrt.libmsvcrtd.lib 参考链接C 运行时 (CRT) 和 C 标准库 (STL) .lib 文件 | Microsoft Learn 仔细留意一下【初始化CRT的代码库】为什么动态生成的依赖库只有lib没有dll官网说它的dll就是【通用C运行时库】和【VC运行库】的合集。这里有点难理解也不知道为什么要这么设计呢希望前辈们多多指教一下。 4. 动态库和静态库混用的情况 假如我们现在EXE使用动态编译但依赖一个静态编译而成的LIB可以吗 试试首先自己编译一个lib。头文件如下 #pragma oncevoid StaticHello(); // 定义一个函数 源文件如下 #include my_mtd_lib.h #include iostream using namespace std;// 实现头文件的函数 void StaticHello() {cout ---------- endl; } 生成选项用调试版的的静态库MTd 接着在其他工程调用这个LIB #include iostream using namespace std;#include ../my-mtd-lib/my_mtd_lib.h #pragma comment(lib, ../Debug/my-mtd-lib.lib)int main() {cout ********** endl;StaticHello(); // 调用my-mtd-lib.lib的函数return 0; } 生成选项用调试版的动态库MDd 点生成报错 1libcpmtd.lib(wlocale.obj) : error LNK2005: public: int __thiscall std::ios_base::flags(void)const (?flagsios_basestdQBEHXZ) 已经在 msvcprtd.lib(MSVCP140D.dll) 中定义 1libcpmtd.lib(wlocale.obj) : error LNK2005: public: __int64 __thiscall std::ios_base::width(__int64) (?widthios_basestdQAE_J_JZ) 已经在 msvcprtd.lib(MSVCP140D.dll) 中定义 1libcpmtd.lib(wlocale.obj) : error LNK2005: public: __int64 __thiscall std::ios_base::width(void)const (?widthios_basestdQBE_JXZ) 已经在 msvcprtd.lib(MSVCP140D.dll) 中定义 1libcpmtd.lib(xlocale.obj) : error LNK2005: public: int __thiscall std::ios_base::flags(void)const (?flagsios_basestdQBEHXZ) 已经在 msvcprtd.lib(MSVCP140D.dll) 中定义 1libcpmtd.lib(xlocale.obj) : error LNK2005: public: int __thiscall std::basic_streambufchar,struct std::char_traitschar ::sputc(char) (?sputc?$basic_streambufDU?$char_traitsDstdstdQAEHDZ) 已经在 msvcprtd.lib(MSVCP140D.dll) 中定义 1libcpmtd.lib(xlocale.obj) : error LNK2005: public: __int64 __thiscall std::ios_base::width(__int64) (?widthios_basestdQAE_J_JZ) 已经在 msvcprtd.lib(MSVCP140D.dll) 中定义 1libcpmtd.lib(xlocale.obj) : error LNK2005: public: __int64 __thiscall std::ios_base::width(void)const (?widthios_basestdQBE_JXZ) 已经在 msvcprtd.lib(MSVCP140D.dll) 中定义 报的都是同一个错libcpmtd.lib与msvcprtd.lib冲突有符号重定义。再仔细看是不是很眼熟刚好是前面 第三部分 表格里面【C标准库】里面MTd和MDd跟我们项目的设定一一对应。我对这个报错的理解是链接阶段main.obj会找到msvcprtd.lib里面关于cout的符号也发现my-mtd-lib.lib也带了来自libcpmtd.lib的cout的符号所以报重定义。 所以一个项目里面像我的例子这样混用两个运行时库实际上大概率不行理论上也不好。最优的做法当然是所有依赖都基于同一套运行时库。 5. 感谢清单 这篇文章是受到下面博主的文章指引启发的感谢前辈的分享 你所不知道的C和C运行库_vcc运行库-CSDN博客
http://www.w-s-a.com/news/637312/

相关文章:

  • 沈阳关键词网站排名一台服务器做两个网站吗
  • 哪个行业该做网站但是没有做dom手表官方网站
  • 网站建设费 大创wordpress中函数get
  • 怎样建设个自己的网站首页有没有专门教做扯面的网站
  • 网站后台怎么添加模板教育类网站开发公司
  • 网站的外链是什么php创建一个网站
  • 语文建设 官方网站网络工程可以从事什么工作
  • 无锡便宜做网站如何下载网站模板
  • 南宁高端网站网络小说网站推广策划方案
  • 苏州网站制作方法建设银行 网站
  • 技术网站推广范例素材网站哪个好
  • 网站找人做的他能登管理员吗网站建设一般多少钱
  • 衡水哪有做网站的wordpress主题站主题
  • 网络建设的流程网站公司注册资本
  • 杭州旅游团购网站建设建立一个网站需要哪些步骤
  • 实木餐桌椅网站建设浦东网站建设哪家好
  • 高端手机网站定制网站网络推广推广
  • 做网站的颜色大学网站群建设方案
  • 淄博学校网站建设哪家好网站集约化建设规范
  • 专业论坛网站有哪些如何制作h5页面视频
  • 南京整站优化网站备案负责人一定要法人
  • 北京正规网站建设公司php网站开发实训感想
  • 织梦网站地图怎么做腾讯网站开发语言
  • 站长之家alexa排名wordpress html 标签
  • WordPress建站主机推荐工程公司的经营范围
  • 做网站要注意哪一点网站需求分析的重要
  • 设计作品网站怎么开网站
  • 上海网站开发制作建设网站的建设费用包括
  • 上海网站建设网站开发亚洲杯篮球直播在什么网站
  • 网站做seo第一步h5制作公司