C/C++ 程序基础 (一)基本语法

2018-06-17 20:57:50来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

  1. 域操作符: C++ 支持通过域操作符访问全局变量,C不支持(识别为重定义)
  2. ++i和i++的效率分析:
    • 内置类型,无区别
    • 自定义数据类型,++i可以返回引用,i++只能返回对象值(拷贝开销)
  3. 浮点数与0的判断
    • if(x >= -epsinon || x <= epsinon)
  4. 不借用中间变量的swap实现。
    • 借助和
    • 借助异或(相同为0,不同为1)
      // 借助和(存在溢出风险)
      void swap(int& a, int &b)
      {
         a = a + b;
         b = a - b;
         a = a - b;   
      }
      
      // 借助异或
      void swap(int& a, int& b)
      {
         a = a^b;
         b = a^b;
         a = a^b;
      }

       

  5. C和C++区别
    • C实现了C++中过程化控制和其他功能
    • C++中的C部分引入了重载,内联函数和异常处理。C++加入了面向对象设计的内容,如类、继承、封装、虚函数、模板、包容器类等。
    • 注意:C++拥有面向对象特性,但不是真正面向对象化的(java)。
  6. extern "C"
    • 使用C库内声明的变量和函数。编译阶段只需要头文件,链接时寻找匹配的定义。
    • 说明内部变量或函数是按照C的标准编译、链接,解决名字匹配问题。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:I - Beat HDU - 2614 DFS

下一篇:18.C++-[ ]操作符使用 、函数对象与普通函数区别(详解)