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

做域名后就得做网站吗东莞seo建站投放

做域名后就得做网站吗,东莞seo建站投放,贵阳网站制作方舟网络,企业网站是否可以做淘宝客IDE编程环境配置 LIB,DLL区别 我们在写项目时会链接(调用)第3方库,或者比如在vs的解决方案solution创建项目project时,不仅可以开发可执行程序exe(可单独运行)(windows/控制台 应用…

IDE编程环境配置

LIB,DLL区别

我们在写项目时会链接(调用)第3方库,或者比如在vs的解决方案solution创建项目project时,不仅可以开发可执行程序exe(可单独运行)(windows/控制台 应用程序),也可以开发自定义库(不可单独运行,只能在应用程序被调用)(DLL动态库,LIB静态库)

库是一个二进制文件,包含了源文件中(.cpp 或 .c),头文件相反,头文件仅包含声明信息

静态库(.lib静态库文件)

静态库存储了实际的数据和函数

当编译器链接库时,会从库中复制这些函数,并和我们的应用程序一起组合为exe可执行文件,最终的可执行文件exe会比较大

发布时仅发布这个可执行文件就行

静态链接库中不能再包含其他的动态链接库或者静态库

动态库(.dll动态库文件)辅助文件:(lib引入库/导入库文件)

引入库文件(.LIB)包含DLL导出的函数和变量的符号名,而.DLL文件包含该DLL实际的函数和数据

编译时仅需要链接LIB引入库文件,DLL中的函数代码和数据并不可复制到可执行文件

运行时,会根据LIB的地址符号表,从DLL库查找导出的函数

发布时不仅要发布这个可执行文件,也要发布DLL动态库文件

动态链接库中还可以再包含其他的动态或静态链接 库

优点:

内存优化:只有exe调用了函数时,才会被加载到内存中,从而可以减少exe文件的大小

代码共享/模块化/跨平台兼容性/插件支持:因为并非像静态库一样被复制到exe中,而是调用了什么什么就被加载,因此有较高的灵活性

LIB,DLL库配置

DLL

使用时只能使用dll中导出的函数,未导出的函数只能在dll内部使用

隐式连接

需要三个文件

*.h头文件

需要include 包含导出函数的头文件

  • 可以直接写绝对路径
  • 可以拷贝到src源码目录下
  • 也可以配置项目属性,VC++目录->包含目录,或者,C/C++->常规->附加包含目录
lib引入库
  • 可以添加到项目project中,确保选中目标项目,选中要添加的库:”添加”–>”现有项”–>选择lib文件
  • 可以配置项目属性,链接器->常规->附加库目录,然后,链接器->输入->附加依赖项(库名)
DLL库
  • 直接拷贝,将dll拷贝到运行时目录,与调用者exe文件在同一目录
  • 可以配置项目属性,VC++目录->可执行目录,并且,调试 ->工作目录

LIB

*.h头文件

.lib静态库

……和上述一样

DLL库使用

我们要手动控制dll中函数哪些被导出,哪些仅在内部使用,

并且是被导出还是导入,在生成dll的时候我们希望导出,在使用dll时则时希望导入符号

__declspec关键字可以作用于,类,函数,变量

_declspec(dllimport) 导入

 __declspec(dllexport)导出

使用时通常通过宏,如果项目定义了DLLEXPORT导出宏,那么宏_DLL_DECLARE_ 即为导出

否则_DLL_DECLARE_为导入

#ifdef DLLEXPORT
#define _DLL_DECLARE_ declspec(dllexport)
#else
#define _DLL_DECLARE_ declspec(dllimport)

名词

编译器:可以完成从预编译编译,汇编,链接整个过程,将高级编程语言(如C、C++、Java等)编写的源代码转换为机器语言,使得高级语言编写的文件能够被计算机执行

  • 编译器执行过程:
  • 预编译(Preprocessing)
  • 使用g++的-E选项将hello.cpp和包含的头文件预编译为hello.i
  • 编译(Compilation)
  • 使用g++-S选项将hello.i编译为汇编代码文件hello.s
  • 汇编(Assembly)
  • 使用g++-c选项将hello.s汇编为目标文件hello.o(翻译为机器指令)
  • 链接(Linking)
  • 使用g++hello.o链接为可执行文件hello.exe
g++ main.cpp -o main

IDE(Integrated Development Environment)集成开发环境:它集成了代码编辑器、编译器、调试器、图形用户界面工具等多种功能,使得开发者可以在一个统一的界面中完成代码编写、编译(例如vs中的build构建)、调试、运行等所有开发任务。

GNU:操作系统,包含GCC(编译器),Linux内核,和其他的GNU工具集(Emacs编辑器,GDB调试器等)

GCC(GNU Compiler Collection,GNU编译器集合)编译器:支持多种编程语言(如C、C++、Objective-C、Fortran等)和多种计算机体系结构(如x86、ARM等)GCC/G++编译器:GCC专门编译C语言,G++专门编译C++语言

MSVC(Microsoft Visual C++)编译器:微软公司开发专有的C++编译器,提供了丰富的库和工具来支持Windows平台的应用程序开发,被Visual Studio IDE所集成

MinGW(Minimalist GNU for Windows)编译器:包括GCC编译器和适用于Windows的头文件和库,开源,跨平台性

运行时库:支持程序运行的基本函数的集合,一般是静态库lib或动态库dll。

SDK:软件开发工具包

构建工具:

对于大型项目,手动列出所有源文件编译,可能会变得繁琐且容易出错,为了防止每次编译都要执行大量的命令,我们使用构建工具,

负责整个项目的构建过程,包括调用编译器、链接器、测试框架等,它们通常会读取项目配置文件(如Makefile、CMakeLists.txt、Premake脚本等),这些文件定义了项目的结构、依赖关系、构建步骤等,然后调用系统编译器进行项目构建

这样只用使用make等命令,就可以编译链接项目配置文件里配置的文件了

make构建工具:适合简单的、不需要跨平台的项目构建,

Cmake构建工具:跨平台,自定义语言,适合需要跨平台支持的大型项目,提供了丰富的功能和更好的可维护性。

Premake构建工具,跨平台,lua语言,提供了高度的灵活性和可扩展性,适用于各种规模和复杂度的项目。

在Window通过命令行使用MSVC编译C++项目

编译:

在window系统中,包含MinGW和MSVC编译器,如果想要使用MSVC,首先应下载(Visual Studio Installer,再选择单个组件(MSVC和SDK)安装)

然后配置Path环境变量,这样我们就可以使用MSVC编译器了

这时使用cl main.cpp(文件名),命令,就可以编译为exe文件了

运行:

通过执行main.exe就可以运行了

在Window通过vscodeIDE编译C++项目

http://www.jinmujx.cn/news/113219.html

相关文章:

  • 济源市网站建设seo优化行业
  • gis网站开发教程旅游网站的网页设计
  • 南通做阿里巴巴网站的单位抖音搜索seo排名优化
  • 鹏翔科技 网站建设淘宝营销推广方案
  • 福建省建设职业管理中心网站百度智能建站系统
  • 在线医疗网站建设线上营销渠道
  • 如何免费发布个人网站站长工具排名查询
  • 基层档案网站建设广告推广免费发布
  • 苏州网站建设哪家好电子商务网站建设与维护
  • 公司接到网站中文域名到期厦门关键词seo排名网站
  • 网站被同行抄袭怎么办aso优化前景
  • 南宁网站建设哪家市场营销培训课程
  • 无锡电子商务网站建设长春百度seo公司
  • 香港网站建立网站平台需要多少钱
  • 网站建设div可拖拽布局网站优化教程
  • 网站的特征包括哪些seo关键词排名点击工具
  • 网站建设费做什么全网营销推广是什么
  • 做网站的工作室泰州seo公司
  • 网站报纸什么软件做郑州网站建设制作
  • 做性事的视频网站名字百度手机版网页
  • 中山做app网站公司吗长春网络推广优化
  • 阳江市网站建设爱站网关键词怎么挖掘
  • 手机网站自适应代码怎么样推广自己的公司
  • 潜江 网站建设360优化大师官方版
  • 珠海建站网站模板以营销推广为主题的方案
  • 淘宝客网站制作视频教程自己怎么创建网站
  • 药品网站 icpseo权重是什么意思
  • 网站为什么提示风险怎么做好网络营销
  • 办网站需要多少费用深圳网络推广大师
  • 网站 特效都是用什么软件做的培训班报名