• 能不能绕过c去学c++?


    目前做工程开发,基本都是c/c++混着用的,c/c++是同源的,c++/是在c的基础上发展起来的,它们之间有些联系和区别:

    区别:

    1.可用库不同

    c基本是系统底层语言,一般系统底层开发用c(例如,linux桌面操作系统和嵌入式操作系统),它主要用stdio.h,stdlib.h,string.h等头文件。

    c++是对c的封装和继承,有许多非常好的库可用(例如,stl模板库)。

    2.语法不同

    c的语法比较简单和直接,更接近底层的计算机操作。c++在c的基础上增加了面向对象编程的特性,如类、继承、多态等。

    3.面向对象编程

    c不直接支持面向对象编程(只能用struct模拟),而c++是一种面向对象的编程语,c++通过类和对象的概念,提供了封装、继承和多态等特性,使得程序更易于组织、重用和维护。

    4. 异常处理

    c不直接支持异常处理机制,而c++提供了异常处理的机制,用于捕获和处理运行时的异常情况。

    联系:

    1. 共同的基础

    c++是在c的基础上发展而来的,因此它们有许多共同的基础,如变量、数据类型、运算符等。

    2. 兼容性

    c++保持了对c的兼容性,可以使用c的代码,并且c++编译器可以编译c的代码。

    3. 相似的编程风格

    尽管c和c++在语法和特性上有所区别,但它们都鼓励使用结构化的编程风格,注重模块化和可读性。

    4. 底层系统编程

    c和c++都可以用于底层的系统编程,如操作系统、嵌入式系统等,因为它们提供了对硬件的直接访问和控制的能力。

    总的来说,不用在学习c++前必须学习c语言,c++学习过程中,你会接触到c的大部分知识,按需去查。

    如何有效学习:

    1.勤学苦练

    2.多实践,去做真正的工程开发,避免闭门造车

    3.掌握数据结构等算法,方便你去掌握stl

    4.掌握多线程编程和并行编程

    必备参考:

    推荐一些经典的c++学习书籍,应该对你有很大帮助,这也是我之前读过的。

    1.《C++ Primer》

    2.《C++ Primer Plus》

    3.《Thinking in C++》

    4.《Effective C++》

    5.《Effective STL》

    6.《More Effective C++》

    7.《c++程序设计》

    8.《c++并发编程实战》

    9.《c++沉思录》

    10.《c++语言的设计和演化》

    11."c++标准"相关的文档

  • 相关阅读:
    人类小脑内在组织背后的基因图谱
    excel 拼接数据填充单元格 = &
    【算法系列篇】与链表相关的算法
    从 VLAN 到 IPVLAN: 聊聊虚拟网络设备及其在云原生中的应用
    算法题:21合并两个有序链表
    细节决定成败!jdbc的List<?> qryList4Sql(String sql)报错-标志符过长
    SaaS系统用户权限设计
    Mybatis-plus apply函数使用
    基础 | JVM - [类加载器]
    图片水印怎么加?图片加水印方法分享
  • 原文地址:https://blog.csdn.net/seasermy/article/details/136774904