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

深圳网站建设 排行榜seo整站优化

深圳网站建设 排行榜,seo整站优化,营销知识和技巧,做网站需要会什么在开发一个软件项目时候,当涉及到一个模块,已经有过类似的项目开发,为了避免重复开发,涉及到在该项目的工程中调用已开发的项目作为子项目,有很多种方法。 一、将项目编译成库文件然后进行调用 调用库文件通常有两种…

在开发一个软件项目时候,当涉及到一个模块,已经有过类似的项目开发,为了避免重复开发,涉及到在该项目的工程中调用已开发的项目作为子项目,有很多种方法。

一、将项目编译成库文件然后进行调用

调用库文件通常有两种调用方法,一种是内部调用,一种是外部调用。两者的区别不大,也就是

1.内部调用

用到TEMPLATESUBDIRS,只是这样就还需要一个大框架C来包含A和B,并不好用。

TEMPLATE = subdirs
SUBDIRS += \A \B 

2.外部调用

1) 方法1

项目A中调用项目B 的大致流程如下:

  1. 将项目B生成动态或者静态库,编译动态库可以参考撮合Qt的mingw编译器与snmp++3.4.6之源码编译动态库,编译静态库可以参考撮合Qt的mingw编译器与snmp++3.4.6之源码编译静态库;
  2. 将B的库文件和B所有的头文件一起放到项目A的工程目录下的同个目录中。(当然,也可以放到写入环境变量的目录下,只是个人感觉没必要);
  3. 通过外部库调用,引用库文件,使用"add Existing Directory"导入头文件。使用库文件的方法可以参考撮合Qt的mingw编译器与snmp++3.4.6之库文件使用。

1) 方法2

还有一种方法,可以用到Qt的宏定义,项目A中调用项目B 的大致流程如下:

  1. 在项目B的pro文件中修改,TEMPLATE = lib,意我编译为库文件;
  2. 在B的pro文件中添加,DEFINES += TEXT_LIBRARY,意为导出库文件,可参考Qt文档阅读笔记-共享库的创建与调用;
  3. 添加或者修改xxx_global.h文件,与第二步中的DEFINES内容对应起来,具体参考Qt文档阅读笔记-共享库的创建与调用;
  4. 修改B的类文件的内容,类名前加上第二步中DEFINES的内容,参考QT生成带界面的动态库并使用;

二、将项目编译成库文件然后进行调用

1.直接导入调用

项目A调用项目B,进行讲解。
直接将项目B的文件整个放入A中,然后通过"add Existing Directory",将B放入A中。只是这样的话,相当于将工程B的pro文件的内容,都写入A的pro文件中,这样A的工程文件会比较混乱,不利于使用。

2.使用pri文件调用

在项目B中创建一个pri文件,然后在A中调用B的pri文件,pri文件中的内容大致就是B的pro文件中的内容。这样使用起来会比较整齐。
例如B的pro文件的内容如下:

#-------------------------------------------------
#
# Project created by QtCreator 2019-01-22T17:29:55
#
#-------------------------------------------------QT       += core guigreaterThan(QT_MAJOR_VERSION, 4): QT += widgetsTARGET = ADataAnsys
TEMPLATE = appSOURCES +=\widget.cpp \paintarea.cpp \globaldata.cpp \playthread.cpp \dataansys.cppHEADERS  += widget.h \paintarea.h \globaldata.h \playthread.h \dataansys.hFORMS    += widget.ui

则pri文件的内容可以这么写

SOURCES +=\$$PWD/widget.cpp \$$PWD/paintarea.cpp \$$PWD/globaldata.cpp \$$PWD/playthread.cpp \$$PWD/dataansys.cppHEADERS  += $$PWD/widget.h \$$PWD/paintarea.h \$$PWD/globaldata.h \$$PWD/playthread.h \$$PWD/dataansys.h \FORMS    += $$PWD/widget.ui

因为这两行内容

QT       += core guigreaterThan(QT_MAJOR_VERSION, 4): QT += widgets

在A的pro文件中有写,因此可以不写。
这两行内容

TARGET = ADataAnsys
TEMPLATE = app

因为B和A一起编译,因此不能写。都使用A的内容。
pri文件启示是pro文件的补充。可参考

三、结论

将项目编译成库文件然后进行调用,这样也有弊端,在跨平台时可能会比较麻烦,需要重新编译新的库。因此,笔者更喜欢用第二种方法,直接将要被调用的项目生成一个pri文件,放入调用的工程文件中,一起编译。

http://www.laogonggong.com/news/48813.html

相关文章:

  • 微信开发网站建设永久免费个人网站申请注册
  • 宣传平台的软件有哪些湖南seo优化公司
  • 新疆生产建设兵团纪检监察网站中国搜索引擎份额排行
  • html5教程初学者邢台市seo服务
  • 高安网站建设百度广告费用
  • 网站建设模板成功案例成都seo优化排名公司
  • 域名持有者个人可以做公司网站360指数
  • 网站开发拓扑图网络销售的工作内容
  • 做网站需要做哪些东西怎么开网站平台挣钱
  • 网站的意义郑州seo询搜点网络效果佳
  • 做网站暴利赚钱培训心得体会怎么写
  • 网站从哪些方面做优化河南网站建设优化技术
  • 政府网站建设 报价bing搜索国内版
  • 中移建设 公司 网站淘宝关键词优化工具
  • 做网站 分工企业网站优化公司
  • 磁盘阵列做网站关键词排名查询工具有哪些
  • 网关高性能 网站建设seo优化方案
  • 汉字市城乡建设规划局官方网站seort什么意思
  • 模板网站开发做网站怎么赚钱
  • 盐城市政府门户网站建设扬州网络推广公司
  • 长春建设网站公司哪家好深圳创新创业大赛
  • 成都知名网站推广厦门seo优化多少钱
  • 济南做网站推广哪家好2345网址导航用户中心
  • 要多少钱专业全网优化
  • 做设计网站的工作内容百度搜索引擎平台
  • 技术培训学校机构凯里seo排名优化
  • 长春做网站费用网站开发怎么做
  • 自己做提卡网站软文营销的技巧有哪些
  • axure做的购物网站北京疫情最新消息
  • 网站做直播需要什么资质北京seo工程师