重学C++ ,重构你的C++知识体系[源码+PDF文档]

双寿
• 阅读 102

参考资料1:https://pan.baidu.com/s/1HNvliTCB9T7K2YVpfl8rDg 提取码: bnyg 参考资料2:https://share.weiyun.com/1l9dH4We 密码:fpmykp

为什么我们还要学C++ 因为在贴近底层、追求性能、降低功耗方面,C++几乎没有敌手,小到嵌入式、大到分布式,C++都是解决问题的利器,面向物联网的“嵌入式”开发和面向大型化的“分布式”开发都离不开它5G即来,C++在起势,你不抓住吗?

一、选择编译器 在C++编程中,我们需要选择一个合适的编译器来将我们编写的源代码转换为可执行的二进制文件。目前常用的C++编译器有GCC、Clang和Microsoft Visual C++等。这里我们选择GCC作为示例。

二、安装GCC编译器 GCC编译器是一个开源的跨平台工具链,可以在多种操作系统上使用。下面是在Windows、MacOS和Linux上安装GCC的步骤:

Windows操作系统:

访问MinGW官方网站 下载对应版本的MinGW安装程序(32位或64位),并运行安装程序。 在安装向导中选择"Download",然后选择一个镜像站点进行下载。 下载完成后,运行安装程序,按照默认选项完成安装。 安装完成后,在命令提示符中输入g++ --version,如果输出了GCC的版本信息,则说明安装成功。 MacOS操作系统:

打开终端应用程序。 使用Homebrew包管理器安装GCC。在终端中输入brew install gcc,然后按照提示完成安装。 安装完成后,在终端中输入g++ --version,如果输出了GCC的版本信息,则说明安装成功。 Linux操作系统:

打开终端应用程序。 使用相应的包管理器(如apt、yum等)安装GCC。例如,在Ubuntu上可以使用以下命令进行安装:sudo apt-get install g++。 安装完成后,在终端中输入g++ --version,如果输出了GCC的版本信息,则说明安装成功。

三、配置编译调试环境 打开Visual Studio Code,点击"文件" -> "打开文件夹",选择你的项目文件夹。 在项目文件夹中创建一个新的C++源代码文件(如main.cpp),并编写一些简单的代码作为示例。 #include

int main() { std::cout << "Hello, World!" << std::endl; return 0; }

在Visual Studio Code中打开终端(点击"视图" -> "终端"),输入以下命令来编译和运行代码: 对于Windows系统,使用以下命令: g++ -o main main.cpp main.exe

四、解压编译安装 注:在安装过程中将用户改为root,具有最高权限,否则可能会因权限问题导致安装不成功;在当前用户安装,该程序路径被添加到该用户的环境变量当中,不同用户可能需要手动添加环境变量。但我在root用户下安装,普通用户下也可使用 1、将cmake的源码压缩包通过共享文件夹复制到ubuntu某个目录下,进行解压, 2、解压后执行./bootstrap 3、出现报错,缺少,未安装openssl ,复制资料的中的openssl-1.1.1d.tar.gz ubunut下安装。(文章末尾将会提供资源下载链接) 安装具体步骤:https://blog.csdn.net/weixin_34072159/article/details/86028584 4、安装成功后,进入cmake文件夹,再次执行./bootstrap 5、然后./configure 6、最后make 7、make install 8、测试安装是否成功:cmake --version,若打印出版本信息,则表示成功

五、 生成DotNetClient 通过Nuget安装Grpc、Grpc.Core及Google.Protobuf 将Helloworld.cs及HelloworldGrpc.cs文件添加到项目中。 编辑Program.cs如下所示: using System; using Grpc.Core; using Helloworld;

namespace DotNetClient { class Program { static void Main(string[] args) { Channel channel = new Channel("127.0.0.1:50051", ChannelCredentials.Insecure); var client = new Greeter.GreeterClient(channel); var reply = client.SayHello(new HelloRequest { Name = "tom" }); Console.WriteLine("Greeting: " + reply.Message); channel.ShutdownAsync().Wait(); Console.WriteLine("Press any key to exit..."); Console.ReadKey(); } } }

点赞
收藏
评论区
推荐文章
荀勗 荀勗
6个月前
首个基于Transformer的分割检测+视觉大模型视频课程(附源码+课件)
参考资料地址1:https://pan.baidu.com/s/14g2VTg8JeeZ0pDey7xwGg提取码:2bmp参考资料地址2:https://share.weiyun.com/tnVNHGMD密码:3fj7iy众所周知,视觉系统对于理解和推理
荀勗 荀勗
6个月前
高性能多级网关与多级缓存架构落地实战(完结+附电子书)
参考资料地址1:https://pan.baidu.com/s/12w0TT26aywnoIcogPg8Uw提取码:uzf4参考资料地址2:https://share.weiyun.com/SNltUNLW密码:zi3dc7什么是网关?网关(Gateway
荀勗 荀勗
6个月前
[新版16章+电子书]SpringBoot+Vue3 项目实战,打造企业级在线办公系统
参考资料地址1:https://pan.baidu.com/s/1KmJP0OPD5P6iHlT7G1MIw提取码:4wyi参考资料地址2:https://share.weiyun.com/jVSDdcBU密码:cruqf9一个完整的在线办公系统具备哪些功
吉太 吉太
6个月前
[2023新版16章]SpringBoot+Vue3 项目实战,打造企业级在线办公系统
参考资料地址1:https://pan.baidu.com/s/1ZJGS0SA9pIUr76VUXioNSg提取码:95bd参考资料地址2:https://share.weiyun.com/jVSDdcBU密码:cruqf9SpringBootVue3
荀勗 荀勗
5个月前
Django+Vue:Python Web全栈开发(基于Django4.1)
参考资料1:https://pan.baidu.com/s/1V06RwdZtg16ugAV0qORBGw提取码:g8um参考资料2:https://share.weiyun.com/j5Xtgnuu密码:brp7w6Django是一个由Python编写的
赵嬷嬷 赵嬷嬷
5个月前
[完结10章]Vue3+Pinia+Vite+TS 还原高性能外卖APP项目
参考资料地址1:https://pan.baidu.com/s/1u0uNBMkOA2NRk3N6myb4Zg提取码:tnlt参考资料地址2:https://share.weiyun.com/Wjw3QpeQ密码:gxrfcwVue3带来的改变,除了其自身
双寿 双寿
4个月前
Prometheus入门与进阶实践教程2024
参考资料1:https://pan.baidu.com/s/1FLteIxtDx3hEiokPn2A0vw提取码:v1nn参考资料2:https://share.weiyun.com/7hok43wM密码:qkrm48一、Prometheus的概念和发展史
双寿 双寿
3个月前
实战Flink+Doris实时数仓教程
参考资料1:https://pan.baidu.com/s/1KoaLsoYaB4JMFAI0aDyXg提取码:pr5c参考资料2:https://share.weiyun.com/OL2DSs1X密码:srevyt一、什么是实时数仓实时数据仓库(Real
双寿 双寿
3个月前
C++大厂面试真题宝典 精选100道[完结7章]
参考资料1:https://pan.baidu.com/s/1FoFcRadpRsEPmnSysrEIlA提取码:mqmu参考资料2:https://share.weiyun.com/mzwzUqJU密码:4r3u73给大家整理了一些关于C大厂面试20
双寿 双寿
2个月前
慕课甄选-2024年Flutter零基础极速入门到进阶实战【完结17章】
参考资料1:https://pan.baidu.com/s/1pD7WhaO5FbbGsu0t3sAw提取码:wv6m参考资料2:https://share.weiyun.com/mDuF95rR密码:c7r3ec一、Flutter基础概念Flutter框