zoukankan      html  css  js  c++  java
  • C++ 1

    1 new 建立一个堆对象

    new 类名(初值列表) 返回一个指针

    int * p=new int(3)动态分配

    2 delete  释放指针

     delete p;

      delete [] p ;释放动态申请的数组

    3 new delete和 malloc free

    malloc free属于c、c++标准库函数 new delete属于操作符

    malloc free只针对内部数据类型的对象;new delete 动态创建的对象

     4 const 常量附值时必须初始化

    5  引用和指针

      int a; int& p; int* q; a=p; q=&a;

      p是引用,q是地址

      指针在没用给地址之前,不能直接附值

    6 函数参数传递

      值传递 地址传递 引用传递

      值传递 地址传递 只是传递一个副本,所以传递应该是指针的指针

      引用传递是传递本身

     7 局部数组 和全局数组

      char * stra()

     {  char *c=new char(10);return c;  }  // 局部变量存的是一个*c,即4B字节的指针,它指向的内容存储在全局存储区内,返回当前指针,可以操作其指向的内容

      char * stra()

     {  char c[]=new char(10);return c;  } // 局部变量存的是 一个数组 占10个字节,返回指针后,存储内容可能被回收,返回指针没有意义

    8 指针和句柄

    指针是标记某个物理地址

    句柄则是标记系统资源,隐藏系统信息。句柄地址(32位整数)——》对象在内存中的地址(不稳定)——》实际对象

  • 相关阅读:
    Js高程:教你如何写出可维护的代码
    ES6 尾调用和尾递归
    js判断对象是否为空对象,判断对象中是否有某属性
    WebSocket断开原因、心跳机制防止自动断开连接
    Js闭包使用姿势指南
    浏览器事件模型
    Js数组排序
    简单的前端错误处理
    移动端做弹窗类页面注意事项
    加载时常统计
  • 原文地址:https://www.cnblogs.com/wwwfj/p/3238706.html
Copyright © 2011-2022 走看看