c++ primer(第四版)学习札记 9-27

1、int *pi = new int; 这样pi指向一个未初始化的整型变量,而
   int *pi = new int(); 这样pi就指向一个初始化为0的整型变量
 
2、int i;
   int *pi = &i;
   delete pi;
这样是错误的,因为pi并不是分配在free store里的
 
3、delete p;
当写上以上的语句时,虽然这个内存已经被释放掉了,可是p仍然是一个地址值,p被称之为dangling pointer,如果再使用p的话就会出问题,所以,应该:
p = 0; 这样就说明p确实没有指向任何对象了
 
4、关于指针的转换有两条:
(1)指向任何对象的指针都能被转换成void *
(2)指向0的指针可以被转换成任意类型的指针
 
5、在默认情况下,C-style的转型动作和const_cast, static_cast,  reinterpret_cast是相同的,但是,如果系统发现无法按const_cast, static_cast转型,那么,系统将使用最底层,也是最危险的转型reinterpret_cast
 
第五章结束
---end--- next: 6.1. Simple Statements  time:05-9-27 0:59am
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值