zoukankan      html  css  js  c++  java
  • C++暑期学习笔记

    C++初步学习笔记


    一、命名空间(namespace)相关

    1 个人理解:

    • 为了避免整合资源中存在的重名矛盾而采取的区别资源的措施;

    2 命名空间的定义:

    • 比如要定义一个命名空间A:

          namespace A
          {
              //。。。。
          }
      

    3 命名空间的使用:

    • 使用前提前声明:

          using namespace std;
      
    • 在想使用的某命名空间A下的函数等前加上A::

          A::fun();	//类似这样
      

    二、常量(const)相关

    1.个人理解:

    • 被const修饰后,无法通过被修饰物修改;
    • 相当于指定一定权限(访问、修改等);

    2.const 和 指针

    情况一:const 修饰 *p

    • 例如:

           const int *p;
      
    • 此时不能对 *p 进行赋值操作;

    • 但可以修改 p 的指向;

    情况二:const 修饰 P

    • 例如:

           int * const p;
      
    • 此时不能修改 p 的指向;

    • 但能对 *p 进行赋值操作;

    情况三:const 修饰 p 且 修饰 *p

    • 例如:

          const int * const p;
      
    • 此时无论是 p 的指向还是 *p 都无法修改;

    3.const 和 引用

    • 和上面的类似,仅给出一个样例:

          int x
          const int &y = x;
      
          x=10;	//合法
          y=20; //不合法
      

    三、函数重载:

    • 理解:
      • 范围:相同作用域内
      • 用 同一函数名 定义的 多个不同的函数;
    • 要求:
      • 貌似计算机会对我们 定义的函数 && 参数的类型 在内部进行重新命名;
      • 所以,参数个数不同||存在某个参数类型不同,均可;

    四、函数内联:

    • 用法:
      • 用inline修饰函数;
    • 相关:
      • 内联编译是建议性的;
      • 编译时具体如何由编译器决定的;
      • 逻辑简单,调用频繁的函数可以建议使用内联;
      • 递归函数无法进行内联;

    五、内存管理

    • 貌似具体挺多奇奇怪怪的问题的,写多了慢慢感受吧;

    • 内存的申请和释放不能和C语言的混用;

    • 内存申请:

        int *p = new int;
        int *arr = new int [10];
      
    • 内存释放:

        delete p;
        delete []arr;
      

    End.

  • 相关阅读:
    计算机图形学--贝塞尔曲线2
    计算机图形学--贝塞尔曲线1
    Windows编程1
    winform里面的Form1.Designer.cs
    mfc添加自定义事件
    怎么精确控制solidworks里面的表格的位置
    solidworks的工程图模板文件和图纸格式文件
    给datagridview的下拉框添加valueChange事件
    php开启短标签与<?xml version="1.0" encoding="UTF-8"?>冲突
    PHP分行打印数组-php输出数组方法大全
  • 原文地址:https://www.cnblogs.com/andwho/p/5183108.html
Copyright © 2011-2022 走看看