基于C++语言的跨平台软件开发的设计与实现

基于C++语言的跨平台软件开发的设计与实现

论文摘要

在当下主流的编程语言当中,C++语言很好的保持了C语言的效率,同时又加入了面向对象的特性以及自身的语言特性,例如模板,泛型编程等。然而,C++却不能像其他高级语言,例如Java,C#, python等编程语言一样有着很好的可移植性,C++语言自身灵活的机制也给其跨平台开发带来了一定的复杂性。本文通过总结实习中的项目,根据实用的代码详细论述C++语言在跨平台开发相关的技术和管理策略,包括代码编写、测试以及部署上的设计和考量。围绕本文的论题,本文将主要论述基于C++语言的多元化软件开发的设计与实现,主要涉及到以下几个方面,C++语言自身的特性,不同平台下C++语言开发的差异性,C++语言的可移植性,以及跨平台开发的项目环境部署。不同于其他高级编程语言,虽然几乎所有的操作平台都支持C/C++语言,但在不同的平台下,它们对C++语言内部变量的定义以及扩展的功能却不尽相同。所以C++语言的多元化开发涉及到目前主流平台之间以及不同编译器之间的差异。而跨平台的开发策略也会根据最终软件发布的平台而有所差异,策略的不同源于根据不同平台,例如Linux, Windows, Mac等主流平台上C++项目的开发、测试规则的差异。本文将会主要论述Linux开源框架下C++语言的软件项目开发在其他主流平台上的移植。

论文目录

  • 致谢
  • 中文摘要
  • ABSTRACT
  • 1 引言
  • 1.1 C++语言的优势领域
  • 1.2 跨平台开发
  • 1.3 项目背景
  • 1.4 课题内容概述
  • 2 C++的可移植性与软件设计
  • 2.1 可移植性的概念
  • 2.2 影响C++语言可移植性的因素
  • 2.2.1 编程语言本身
  • 2.2.2 编译器
  • 2.2.3 编译系统
  • 2.2.4 用户界面
  • 2.2.5 不同平台间的差异
  • 2.2.6 硬件平台体系结构
  • 2.3 C++语言跨平台软件开发的设计
  • 2.3.1 避免语言的扩展特性
  • 2.3.2 实现动态的处理
  • 2.3.3 使用脚本文件进行管理
  • 2.3.4 使用安全的数据串行化
  • 2.3.5 跨平台开发中的编译及测试
  • 2.3.6 实现抽象
  • 3 建立跨平台的开发环境
  • 3.1 跨平台开发编译器的选择
  • 3.2 建立跨平台的Make系统
  • 3.2.1 使用Make生成策略
  • 3.2.2 Windows平台与make
  • 3.2.3 在Windows下使用GNU make
  • 3.2.4 跨平台的make系统
  • 4 C++语言跨平台软件开发的实现
  • 4.1 C++语言跨平台的开发策略
  • 4.2 建立统一的工程包
  • 4.3 建立跨平台的代码库
  • 4.4 工厂模式与单例模式的实现
  • 4.5 利用平台依赖库封装平台相关代码
  • 4.6 处理器的差异控制
  • 4.6.1 内存对齐
  • 4.6.2 字节顺序
  • 4.6.3 类型的大小
  • 4.6.4 使用预编译处理类型差异
  • 4.7 编译器的差异控制
  • 4.7.1 实现平台无关的代码
  • 4.7.2 内存管理
  • 4.7.3 容错性的影响
  • 4.7.4 利用日志管理管理异常
  • 4.8 操作系统和接口库
  • 4.8.1 文件描述符的限制
  • 4.8.2 进程和线程的限制
  • 4.8.3 操作系统抽象层
  • 4.8.4 实例-C++语言跨平台开发中多线程的实现
  • 4.9 用户界面
  • 4.9.1 跨平台软件图形界面的设计
  • 4.9.2 wxWidgets简介
  • 4.9.3 使用wxWidgets开发跨平台软件的界面
  • 5 结论
  • 6 附录
  • 6.1 工厂模式与单例模式实例的代码实现
  • 6.2 多线程跨平台开发实现的关键代码
  • 参考文献
  • 作者简历
  • 学位论文数据集
  • 相关论文文献

    • [1].物联平台软件构建企业智能互联中枢[J]. 化工进展 2016(S2)
    • [2].基于C++语言的跨平台软件开发[J]. 电子技术与软件工程 2017(08)
    • [3].C++语言下的跨平台软件开发[J]. 电子技术与软件工程 2015(09)
    • [4].C++语言下的跨平台软件开发[J]. 计算机光盘软件与应用 2015(01)
    • [5].易控天地平台软件助力用户建立智慧工地[J]. 自动化博览 2016(11)
    • [6].高职高专慕课平台软件系统的设计与开发[J]. 信息系统工程 2017(06)
    • [7].平台软件不是万能的[J]. 中国计算机用户 2009(12)
    • [8].基于云平台的智能矿山管控平台软件的设计[J]. 自动化与仪器仪表 2020(08)
    • [9].网约车行业应自我审查[J]. 中国报业 2018(11)
    • [10].行业应用垂直深入 平台软件的作用重新定位[J]. 中国安防 2016(07)
    • [11].基于C++语言的跨平台软件开发的设计[J]. 硅谷 2014(04)
    • [12].制高点争夺战,安防平台市场烽烟骤起——2012年安防平台软件市场发展随笔[J]. 中国安防 2012(12)
    • [13].基于物联网的智慧水务平台软件设计[J]. 工业控制计算机 2020(06)
    • [14].地铁中智慧服务平台的打造及价值研究[J]. 城市建设理论研究(电子版) 2018(33)
    • [15].国内四表远传平台软件浅谈[J]. 建设科技 2017(16)
    • [16].创新服务 合作共赢——保全式安全服务平台软件面市推广[J]. 中国物业管理 2016(03)
    • [17].行业深入和轻量应用——安防管理平台软件的两极分化趋势[J]. 中国公共安全 2015(Z1)
    • [18].平台软件管理提升公共安全管理综合能力——公共安全监控与应急管理平台设计与应用[J]. 中国安防 2009(11)
    • [19].柴油发动机性能试验平台软件系统的设计与开发[J]. 现代工业经济和信息化 2017(05)
    • [20].基于C++语言下的跨平台软件开发设计研究[J]. 中国新通信 2016(18)
    • [21].基于C++语言的跨平台软件开发设计研究[J]. 电子商务 2015(02)
    • [22].安防平台软件:由服务安防向超越安防转变——访北京声迅电子有限公司技术部经理余和初[J]. 中国安防 2011(Z1)
    • [23].虚拟试验平台软件灵活性用户界面技术研究[J]. 计算机测量与控制 2010(04)
    • [24].信号分析教学实验平台软件开发[J]. 自动化与仪器仪表 2017(02)
    • [25].高校科研平台的软件系统建设探索研究[J]. 佳木斯职业学院学报 2020(02)
    • [26].基于Android的微课平台软件设计[J]. 电子技术与软件工程 2014(13)
    • [27].基于Delphi平台软件的某考试作弊甄别研究[J]. 中国社会医学杂志 2013(05)
    • [28].基于多种网络体系的路由交换平台软件设计与研究[J]. 电子设计工程 2016(20)
    • [29].中文平台软件UCDOS和鲍岳桥回顾[J]. 现代交际 2015(03)
    • [30].安防监控管理平台软件的标准化之路[J]. 中国安防 2014(06)

    标签:;  ;  ;  ;  

    基于C++语言的跨平台软件开发的设计与实现
    下载Doc文档

    猜你喜欢