zoukankan      html  css  js  c++  java
  • C/C++的区别在哪里?

    Q:C 和 C++ 的区别是什么?

    A:C++ 在设计之初可以看作是 C 的超集,但是随着C++的发展,C 和 C++ 现在已经发展成了两种不同的语言,但是它们的联系还是很密切的:

    + 首先 C 和 C++ 在基础语法上差别不大。
        
        这里说的基础语法说的是语法细节,C++ 能支持绝大多数的 C 的基础语法。

    + 往上一层,C++ 比 C 多出的一些语法和关键字

        1、两者头文件的不同以及名称空间的声明不同;
        2、新增关键字 new/delete;
        3、新增关键字 auto、explicit,显示和隐式转换概念。
        4、新增引用传递,实际上是指针的封装实现;

    + 重载、虚函数概念

    + 类、对象和继承,完全独立于 C 的概念

        对象是类的实体,而这个实体包含了各种变量和函数;
        有了类对象就有了构造函数、析构函数、复制构造函数以及友元函数;
        有类就有权限和继承,私有、公有、单继承、多继承、虚继承、父子类、基类派生类等

    + C++ 支持范式编程,异常机制、元编程、STL标准库等独立特性

    + 设计思想和引用场景的区别

        C 出于对执行效率和内存占用的考虑使它趋于底层,如内核驱动和操作系统,特点是越精简越高效。
        C++ 设计之初的动机就是把 C 繁杂的实现过程抽象为类型并且进行实例化管理,相比于 C,更加开放和自由,利于代码维护和管理,适合做大型软件。
        C 更注重逻辑实现, C++ 更注重程序的整体设计,这就是常说的面向过程和面向对象

    原创 
    https://www.zhihu.com/question/28834538/answer/370975653
  • 相关阅读:
    [写代码]处理一组lrc歌词文件
    [ubuntu]windows重装以后,恢复grub引导
    [HDOJ1878]欧拉回路
    [写代码]解析自定义数据库文件的思路
    [写代码]wordList——百词斩CLI版
    [HDOJ2544]最短路
    [HDOJ1285] 确定比赛名次
    [HDOJ1232]畅通工程
    [HDOJ2717]Catch That Cow
    jQuery实现点击开关图片切换
  • 原文地址:https://www.cnblogs.com/wanghao-boke/p/14613495.html
Copyright © 2011-2022 走看看