0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

从入门到实战,教你如何学习C++

C语言编程学习基地 来源:C语言编程学习基地 作者:C语言编程学习基地 2022-09-07 15:50 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

C++是一种通用的、面向对象的编程语言,可用于开发操作系统、游戏、图形用户界面、后端以及高性能系统和应用程序。

所以,尽管Python、Go这些后起之秀近几年热度非常高,但是在很多领域还是无法撼动C++的地位。

今天,就从浅到深,从入门到实战,教你如何学习C++。

篇幅较长,先给出本文的目录:

C++简介

什么是C++?

为什么学C++?

C++的历史

C和C++的区别

编译型语言和解释型语言

从入门到实战

开发环境

C++入门

C++练习

C++实战

C++进阶

学习资源

书籍

视频课程

开源项目

下面,就正式开始本文的正式内容吧!因为时间问题,整个大纲暂时只写完了一半,所以今天只分享到开发环境为止,其他内容我们明天再给大家分享吧!

C++简介

什么是C++?

现如今,流行的编程语言非常多,Python、Go、Java、PHP、JavaScript等等,它们各有自己擅长的领域和方向。

而C++则在系统资源和内存控制更胜一筹,因此,在操作系统、图形图像、游戏、嵌入式这些对性能要求较高的领域,C++一直都具有不可替代的地位。

它可以用来开发在多个平台上运行的应用程序,如服务器、个人电脑、基于云的系统和移动设备。

为什么学C++?

如果你对计算机游戏、高端计算项目的软件工程、加密货币挖矿程序和开发移动设备的操作系统等领域感兴趣,学习C++则是必不可少的。

此外,相对于Go、Python这些更加高阶的编程语言,会涵盖更加全面的编程知识,也有助于学习者理解变量、函数、面向对象、指针、内存...这些在很多高阶语言中容易被忽略的概念和知识。

C++的历史

C++是由丹麦计算机科学家Bjarne Stroustrup(比雅尼·斯特劳斯特鲁普)创造、设计和开发的。

斯特鲁斯特鲁普想制造一种类似于C语言的灵活和动态的语言,但是,需要拥有更多的功能。

它最初被称为 "C with classes",在1983年被重新命名为C++,意思是 比C高一等。

国际标准化组织的C++联合技术委员会在1998年至2017年间对C++进行了五次升级。

一个新的版本,C++20,计划也在计划中将要发布。

C和C++的区别

C和C++有哪些区别?

这是在学习C或者C++时无法绕开的一个问题。

Jon Kalb(软件工程讲师、C++ Now和CppCon的主席)说,C++是C的进化。

虽然它们有一些相似之处,但现在两者有很大的不同。

虽然C语言被广泛使用,但Kalb说它并不像C++那样支持抽象、通用编程和面向对象编程。

在大型项目中,往往需要非常高层次的抽象,在这方面C++要远胜于C语言。

抽象层指的是观察或编程一个系统的复杂程度。低层次的抽象有更多的细节,而高层次的抽象可以包括整个系统。

C语言是一种程序性语言,它的代码由指令组成,直接告诉计算机或其组件按逻辑步骤完成一项任务。

C++也可以做到这一点,而且,在此基础上它支持高级功能,如类和面向对象,它允许程序员创建包含数据和功能的 "对象"。这种方法的优点是,软件对象比程序性指令执行得更快,更容易执行,而且面向对象的编程使代码更容易修改、维护和调试。

1a9d8296-2e80-11ed-ba43-dac502259ad0.png

编译型语言和解释型语言

提起编程语言,就必须先要理解语言所属类型 。

编程语言可以分为编译型语言和解释型语言,下面分别解释一下。

编译型语言:程序在执行之前需要一个专门的编译过程,把程序编译成 为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果就行了。程序执行效率高,依赖编译器,跨平台性差些。比较有代表性的有C、C++等。

解释型语言:相对于编译型语言存在的,源代码不是直接翻译成机器语言,而是先翻译成中间代码,程序在运行时才翻译成机器语言,每执行一次都要翻译一次,因此效率比较低。比较有代表性的包括Java、Python、JavaScript等。

1acb651c-2e80-11ed-ba43-dac502259ad0.png

从入门到实战

因为C++很受欢迎,所以有很多资源可供初学者使用,包括在线教程、网站和书籍。

当决定学习C++或任何其他计算机语言时,你首先要清楚将它用于什么方向、什么岗位。

如果你从事机器学习深度学习、数据分析这些偏重于算法和分析、对性能不敏感的岗位,你完全可以选择R或者Python这些语言替代。

但是,如果你从事游戏、系统等对性能有严格要求的岗位,C++则是首要的选择。

那么,你已经准备好进入到C++的学习了吗?明天的话,我们再正式分享其他知识!

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编程语言
    +关注

    关注

    10

    文章

    1959

    浏览量

    38927
  • C++
    C++
    +关注

    关注

    22

    文章

    2122

    浏览量

    76716
  • python
    +关注

    关注

    57

    文章

    4858

    浏览量

    89599

原文标题:【如何系统地学习 C++ 语言】关于C++,有哪些你需要提前知道的知识?

文章出处:【微信号:cyuyanxuexi,微信公众号:C语言编程学习基地】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    01,10+年资深LabVIEW专家,手把手教你攻克机器视觉+深度学习(5000分钟实战课)

    “告别检测系统能力缺陷!10+年LabVIEW视觉资深专家手把手教你:5000+分钟高清教程(含工具、算法原理、实战操作、项目优化全流程讲解)”——传统视觉算法→深度学习建模→工业级
    的头像 发表于 12-02 08:07 115次阅读
    <b class='flag-5'>从</b>0<b class='flag-5'>到</b>1,10+年资深LabVIEW专家,手把手<b class='flag-5'>教你</b>攻克机器视觉+深度<b class='flag-5'>学习</b>(5000分钟<b class='flag-5'>实战</b>课)

    AI+嵌入式双赛道课程就位!0基础项目实战,硬实力拿offer

    、学完不会实战的难题上。别担心,华清远见的AI+大模型全栈工程师实战课、嵌入式STM32全栈工程师实战课,早已帮你把入门到职场的路铺好:0
    的头像 发表于 10-24 15:02 127次阅读
    AI+嵌入式双赛道课程就位!<b class='flag-5'>从</b>0基础<b class='flag-5'>到</b>项目<b class='flag-5'>实战</b>,硬实力拿offer

    嵌入式入门进阶,怎么学?

    嵌入式入门进阶,怎么学? 嵌入式学习的核心是 “软硬结合的技术壁垒”,科学分层才能高效突破。以下是
    发表于 09-02 09:44

    CAN总线入门双捷径:零基础实战的极速指南

    无需深厚背景,两条捷径助你快速入门CAN总线!通过系统化的基础学习实战项目模拟,原理到应用一气呵成,轻松解锁CAN通讯技能。 CAN(Controller Area Network
    的头像 发表于 08-15 14:58 506次阅读
    CAN总线<b class='flag-5'>入门</b>双捷径:零基础<b class='flag-5'>到</b><b class='flag-5'>实战</b>的极速指南

    直流电机EMC整改:干扰源解决方案的实战指南

    南柯电子|直流电机EMC整改:干扰源解决方案的实战指南
    的头像 发表于 08-05 11:07 660次阅读

    DeepSeek:入门精通

    电子发烧友网站提供《DeepSeek:入门精通.pdf》资料免费下载
    发表于 05-28 14:12 2次下载

    学电路设计分享学习心得、技术疑问及实战成果

    《硬件开发与电路设计速成实战篇(入门精通)》系列课程活动:学习完《硬件开发与电路设计速成实战篇(入门
    的头像 发表于 05-20 08:07 440次阅读
    学电路设计分享<b class='flag-5'>学习</b>心得、技术疑问及<b class='flag-5'>实战</b>成果

    Python入门精通背记手册

    电子发烧友网站提供《Python入门精通背记手册.pdf》资料免费下载
    发表于 03-28 17:43 85次下载

    爬虫数据获取实战指南:入门高效采集

    爬虫数据获取实战指南:入门高效采集     在数字化浪潮中,数据已成为驱动商业增长的核心引擎。无论是市场趋势洞察、竞品动态追踪,还是用户行为分析,爬虫技术都能助你快速捕获目标信息。
    的头像 发表于 03-24 14:08 1258次阅读

    DeepSeek入门精通

    电子发烧友网站提供《DeepSeek入门精通.pdf》资料免费下载
    发表于 03-04 15:43 67次下载

    液晶屏维修入门精通

    资料介绍了如何液晶屏入门提高全部内容
    发表于 02-24 16:46 10次下载

    入门必看】菜鸟大牛,嵌入式系统完整学习路线!看这篇就够了!

    ➡嵌入式Linux”的顺序帮助您入门进阶,掌握嵌入式开发的精髓。第一阶段单片机单片机是嵌入式学习的基石,因为它集成了处理器、存储器和输入输出接口于单一芯片中,提
    的头像 发表于 02-20 10:53 3196次阅读
    【<b class='flag-5'>入门</b>必看】<b class='flag-5'>从</b>菜鸟<b class='flag-5'>到</b>大牛,嵌入式系统完整<b class='flag-5'>学习</b>路线!看这篇就够了!

    清华大学发布:DeepSeek入门精通

    《DeepSeek:入门精通》是由清华大学新闻与传播学院新媒体研究中心元宇宙文化实验室的余梦珑博士后团队精心撰写的一份专业文档。该文档篇幅长达104页,文档的核心内容围绕DeepSeek的技术
    的头像 发表于 02-14 09:49 1.2w次阅读
    清华大学发布:DeepSeek<b class='flag-5'>从</b><b class='flag-5'>入门</b><b class='flag-5'>到</b>精通

    DeepSeek:入门精通

    DeepSeek:入门精通
    发表于 02-08 18:00 134次下载

    Delphi、C++ Builder和Lazarus连接到Oracle数据库

    Delphi、C++ Builder 和 Lazarus 连接到 Oracle 数据库 Oracle 数据访问组件 (ODAC) 是一个组件库,它为 32 位和 64 位平台提供 Delphi
    的头像 发表于 01-15 10:01 1353次阅读