c++ 开发平台(想做C++ 方面开发,是基于 Linux 还是基于 Windows 平台)

:暂无数据 2026-07-18 19:20:01 :0

c++ 开发平台(想做C++ 方面开发,是基于 Linux 还是基于 Windows 平台)

本篇文章给大家谈谈c++ 开发平台,以及想做C++ 方面开发,是基于 Linux 还是基于 Windows 平台对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

本文目录

想做C++ 方面开发,是基于 Linux 还是基于 Windows 平台

标准 C++是跨平台的,Linux 和 Windows 都可以。
做 C++ 一般是 Linux 下的后台开发的比较多。

C++跨平台SDK开发指北

上半年一直忙于主机平台支付功能的接入,原来基于android开发的sdk并不适用主机平台。为了满足业务需求,先是重新开发了一套unity的sdk,用于unity引擎游戏业务集成。然而该unity sdk并不能满足ue4引擎游戏业务的需求,考虑到后续sdk的兼容和通用,选择重新开发一套c++ sdk,实现跨主机平台接入。

虽然很早之前也接触过c++开发,但工作以来主要还是做android平台开发,c++很多东西早就忘的一干二净了。相对于早前自己开发的unity sdk,c#语言更类似java,同样采用虚拟机实现,平台工具都比较齐全。而c++自身的语言特性和平台实现差异,决定了重新开发一套c++ sdk的难度。

c++ sdk的目标是能支持跨平台调用,实现多平台支付接入。如:既能支持switch、ps4、xbox等不同平台支付功能的接入,又能支持unity跨平台调用该sdk。因此,对外暴露的sdk接口入参回调等最好是统一格式,最小化的个性定制。

c++对外接口如下所示:

为了实现unity跨平台调用该c++ sdk,需要再封装一层协议接口层,实现unity到c++的转换。并通过dllexport,将接口暴露到unity层。

以初始化接口Initialize为例:

unity层调用c++ dll库中接口的方式如下:

这部分内容主要分析c++ sdk的逻辑设计思路。c++ sdk对外提供初始化、支付、补发、查物品信息和查营销信息等功能,对内需要维护复用一套框架,实现不同平台不同支付渠道的接入。

由于对外提供的接口存在相似性(入参request、回调callback),抽象出订单中心。

每次各外部接口调用开始到结束,复用同一套订单逻辑。以支付接口调用为例:

sdk是以渠道为粒度,提供了一套框架,负责实现各渠道的流程调度。而每个渠道通常存在差异,对外提供的功能不一,从而将渠道的每项功能抽象为具体的渠道实例,如:支付渠道、补发渠道、查物品信息渠道和查营销活动渠道。而sdk再通过基类,抽象出各功能渠道的流程框架,具体实现交由不同子类渠道完成。

仍以支付为例:

由于c++不支持反射,不能像java实现实例的动态创建。c++ sdk通过渠道工厂类,负责渠道实例的创建回收。

网络层设计的目标是既能满足sdk自身业务需要,又能跨平台调用。于是将网络抽象成3层:

这里讲下跨平台层实现逻辑。

由于sdk目标是能在多平台上运行,而不同平台如windows、linux和unix中网络库不同;要实现多平台统一,可以采用的方式有:

c++ sdk的目标是跨平台,但如何实现跨平台?

综合sdk实现过程中,需要跨平台实现的主要是sdk的基础功能,如:网络收发、AES加/解密、gzip压缩。正如在上面提到的一样,开始的方案是通过引入第三方平台无关的库来实现各基础功能,再通过编译成不同平台的库来实现跨平台。而在x64上,自己也通过这种方式实现了整套流程,在x64上采用的库为:

而在移植到ps4平台时,花了大量时间做libcurl的编译,而openssl编译适配更是毫无头绪。于是放弃了这种实现,改而通过将基础功能下沉到具体平台实现,sdk抽象出基类实现跨平台框架。最终在ps4的移植后,采用的方式:

c++ sdk断断续续开发了一个多月,重新捡起c++到完成ps4的移植测试,还是有点成就感的。之前虽然也重新写了一套unity sdk,但相对c++ sdk来说,难度还是低了很多。虽然也是重复造轮子,但在整个项目的过程中,碰到的问题远比预期的多,解决问题的快乐才是继续的源动力。

c语言编程的平台是什么

c语言编程的平台是:

1、GCC,GNU组织开发的开源免费的编译器;

2、MinGW,Windows操作系统下的GCC;

3、Clang,开源的BSD协议的基于LLVM的编译器;

4、Visual C++ :: cl.exe,Microsoft VC++自带的编译器。

扩展资料

选择开发平台注意事项

一、windows

开发环境:visual studio

特点:集成开发环境、简单易用、完整的工具集

缺点:需要授权(也有免费版)体积庞大、无法学习到背后工程代码组织情况、不利于初学者掌握代码编译、链接过程、工程管理

二、unix 或者类unix (包过aix,open solaris ,*bsd, linux)

开发环境:编译工具 gcc、clang ...等等

代码器:vim、emacs等

工程组织:make,CMake

特点:操作系统集成很多工具,所有的工具几乎开源且免费、短小精悍、功能强大

缺点:需要自己动手搭建开发环境、熟悉编译工具、

熟悉器操作、熟悉类unix操作系统的操作。

入门门槛高需要在命令模式下使用脚本、make等工具完成开发工作

C和C++语言有哪些主流开发工具

AppCode :构建与JetBrains’ IntelliJ IDEA 平台上的用于Objective-C,C,C++,Java和Java开发的集成开发环境
CLion:来自JetBrains的跨平台的C/C++的集成开发环境
Code::Blocks :免费C,C++和Fortran的集成开发环境
CodeLite :另一个跨平台的免费的C/C++集成开发环境
Dev-C++:可移植的C/C++/C++11集成开发环境
Eclipse CDT:基于Eclipse平台的功能齐全的C和C++集成开发环境
Geany :轻量级的快速,跨平台的集成开发环境。
IBM VisualAge :来自IBM的家庭计算机集成开发环境。
Irony-mode:由libclang驱动的用于Emacs的C/C++微模式
KDevelop:免费开源集成开发环境
Microsoft Visual Studio :来自微软的集成开发环境
NetBeans :主要用于Java开发的的集成开发环境,也支持其他语言,尤其是PHP,C/C++和HTML5。
Qt Creator:跨平台的C++,Javascript和QML集成开发环境,也是Qt SDK的一部分。
rtags:C/C++的客户端服务器索引,用于 跟基于clang的emacs的集成
Xcode :由苹果公司开发
YouCompleteMe:一个用于Vim的根据你敲的代码快速模糊搜索并进行代码补全的引擎。
构建系统
Bear :用于为clang工具生成编译数据库的工具
Biicode:基于文件的简单依赖管理器。
CMake :跨平台的免费开源软件用于管理软件使用独立编译的方法进行构建的过程。
CPM:基于CMake和Git的C++包管理器
FASTBuild:高性能,开源的构建系统,支持高度可扩展性的编译,缓冲和网络分布。
Ninja :专注于速度的小型构建系统
Scons :使用Python scipt 配置的软件构建工具
tundra :高性能的代码构建系统,甚至对于非常大型的软件项目,也能提供最好的增量构建次数。
tup:基于文件的构建系统,用于后台监控变化的文件。
静态代码分析
提高质量,减少瑕疵的代码分析工具列表
Cppcheck :静态C/C++代码分析工具
include-what-you-use :使用clang进行代码分析的工具,可以#include在C和C++文件中。
OCLint :用于C,C++和Objective-C的静态源代码分析工具,用于提高质量,减少瑕疵。
Clang Static Analyzer:查找C,C++和Objective-C程序bug的源代码分析工具

想做C++ 方面开发,是基于 Linux 还是基于 Windows 平台的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于想做C++ 方面开发,是基于 Linux 还是基于 Windows 平台、想做C++ 方面开发,是基于 Linux 还是基于 Windows 平台的信息别忘了在本站进行查找哦。

c++ 开发平台(想做C++ 方面开发,是基于 Linux 还是基于 Windows 平台)

本文编辑:admin

更多文章:


游戏代理是怎么赚钱的如何代理游戏(如何做手游代理)

游戏代理是怎么赚钱的如何代理游戏(如何做手游代理)

大家好,关于游戏代理是怎么赚钱的如何代理游戏很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于如何做手游代理的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

2026年10月11日 09:50

淄博桓台网站建设公司(桓台赤橙文化产业有限公司怎么样啊)

淄博桓台网站建设公司(桓台赤橙文化产业有限公司怎么样啊)

各位老铁们好,相信很多人对淄博桓台网站建设公司都不是特别的了解,因此呢,今天就来为大家分享下关于淄博桓台网站建设公司以及桓台赤橙文化产业有限公司怎么样啊的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!

2026年10月11日 08:30

oa系统app下载(华为荣耀4x下载台达oa系统怎么下载)

oa系统app下载(华为荣耀4x下载台达oa系统怎么下载)

本篇文章给大家谈谈oa系统app下载,以及华为荣耀4x下载台达oa系统怎么下载对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

2026年10月11日 08:20

遵义网约车最新消息(在遵义跑网约车能赚钱吗)

遵义网约车最新消息(在遵义跑网约车能赚钱吗)

今天给各位分享在遵义跑网约车能赚钱吗的知识,其中也会对在遵义跑网约车能赚钱吗进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

2026年10月11日 08:00

千万别学计算机科学与技术(不喜欢计算机千万别学计算机学计算机真的会很后悔吗)

千万别学计算机科学与技术(不喜欢计算机千万别学计算机学计算机真的会很后悔吗)

“千万别学计算机科学与技术”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看千万别学计算机科学与技术(不喜欢计算机千万别学计算机学计算机真的会很后悔吗)!

2026年10月11日 06:20

九江市人才招聘信息网(九江市区用什么网站招聘效果好,求职者一般都用什么招聘网站)

九江市人才招聘信息网(九江市区用什么网站招聘效果好,求职者一般都用什么招聘网站)

大家好,今天小编来为大家解答以下的问题,关于九江市人才招聘信息网,九江市区用什么网站招聘效果好,求职者一般都用什么招聘网站这个很多人还不知道,现在让我们一起来看看吧!

2026年10月11日 04:40

吉林省四平市有没疫情?四平市停水在哪里查

吉林省四平市有没疫情?四平市停水在哪里查

这篇文章给大家聊聊关于四平市官网,以及吉林省四平市有没疫情对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

2026年10月11日 04:30

建设局是什么单位(住建局属于政府部门吗)

建设局是什么单位(住建局属于政府部门吗)

本篇文章给大家谈谈建设局是什么单位,以及住建局属于政府部门吗对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

2026年10月11日 04:00

“品牌”用英语怎么说?求品牌的英语单词和意思

“品牌”用英语怎么说?求品牌的英语单词和意思

今天给各位分享“品牌”用英语怎么说的知识,其中也会对“品牌”用英语怎么说进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

2026年10月11日 03:50

哈尔滨电话本黄页(哈尔滨社区电话)

哈尔滨电话本黄页(哈尔滨社区电话)

这篇文章给大家聊聊关于哈尔滨电话本黄页,以及哈尔滨社区电话对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

2026年10月11日 03:30

最近更新

oppo r813t卡刷包(oppo r813s可以刷r813t刷机包)
2026-10-11 10:00:25 浏览:0
热门文章

by网站域名444(444ppp现在是什么域名)
2026-08-19 20:20:31 浏览:13
韩国大片视频mv(韩国20个感人mv)
2026-07-11 13:10:02 浏览:12
标签列表