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

深圳网站建设 排行榜如何搭建企业网站

深圳网站建设 排行榜,如何搭建企业网站,做网站的成本有多少,本地wordpress后台在开发一个软件项目时候,当涉及到一个模块,已经有过类似的项目开发,为了避免重复开发,涉及到在该项目的工程中调用已开发的项目作为子项目,有很多种方法。 一、将项目编译成库文件然后进行调用 调用库文件通常有两种…

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

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

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

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.yidumall.com/news/70712.html

相关文章:

  • 合肥专业网站建设seo专业技术培训
  • 17网站一起做网店潮汕外贸营销型网站
  • 做百度竞价网站搜索不到seo入门培训学多久
  • 上海网站开发多少钱创建网站的公司
  • 西城区住房和城乡建设委员会网站谷歌浏览器下载安卓版
  • 网站建设电话销售说不需要博客是哪个软件
  • 厦门做网站优化哪家好西安百度推广联系方式
  • 容桂销售型网站建设临沂google推广
  • 宣城市网站集约化建设长安网站优化公司
  • 上海网站制作公司哪家白杨seo
  • wordpress加首页seo基础优化包括哪些内容
  • 连云港市网站设计百度网盘电脑网页版
  • vps做网站需要做哪些准备网络营销是什么专业类别
  • python做网站好不好网站免费seo
  • 网站建设思路方案省好多会员app
  • 产品review网站怎么做aso优化推广
  • 个人做 网站2019seo网站推广有哪些
  • 建立网站有怎么用途168推广网
  • 南京做网站南京乐识最优北京计算机培训机构哪个最好
  • 番禺网站开发哪家专业企业培训课程表
  • 北京的做网站公司惠州seo报价
  • 让网站会员做产品标签确认网络营销方案如何写
  • 平台型网站建设微商引流人脉推广软件
  • 选择网站开发公司的标准怎么推广销售
  • 买了网站 怎么做呢关键词优化课程
  • 建站系统模板百度招聘网最新招聘信息
  • 怎么注册晋江网站做的搜索引擎都有哪些
  • 网站建设项目简介个人网站的制作模板
  • Godaddy优惠码网站怎么做的网店培训
  • 做外包的网站有哪些问题现代网络营销的方式