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

王朝c/c++·作者佚名  2006-01-10
窄屏简体版  字體: |||超大  

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

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航