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位整数)——》对象在内存中的地址(不稳定)——》实际对象

原文链接: https://www.cnblogs.com/wwwfj/p/3238706.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    C++ 1

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/98626

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月10日 上午4:50
下一篇 2023年2月10日 上午4:51

相关推荐