- 博客(5)
- 资源 (2)
- 收藏
- 关注
原创 C++自定义类的析构函数,生成指针对象:用delete删除时,产生错误:"fatal error LNK1120: 1 个无法解析的外部命令"
<br /><br /> 在C++中,如果用户自定义了类的析构函数,会覆盖系统默认的析构函数。则对象在销毁时,会调用用户定义的类的析构函数,来释放内存。<br /> 所以用户在定义类的析构函数时,如果没有在程序中实现,在使用类的指针对象是。用delete删除对象是会出现错误:“fatal error LNK1120: 1 个无法解析的外部命令”。<br />就是因为,用户定义的析构函数,而没有来实现。所以delete删除时,出现了这样的错误。<br /> 总结:<br />
2011-01-19 19:38:00 5853 2
原创 C++基础之:不要把多态用在数组上
<br />通过指向基类的指针和引用来操纵派生类对象,这是继承的一大特性。C++允许通过基类的指针和引用来操纵派生类数组。但是,结果是不确定的。<br />比如,有个BST的类,以及一个叫BalancedBST的类,他继承自BST。<br />class BST{ ... };<br />class BalancedBST:public BST{ ... };<br />考虑一个打印一个BST数组里的所有BST元素的函数:<br />void printBSTArray(ostream &s,<br />c
2011-01-08 16:13:00 1504
原创 C++基础之:C++风格的类型转换
<br />与C语言相比C++引入了四种新的类型转换方式,这四种操作符是:static_cast,const_cast,dynamic_cast,以及reinterpret_cast。<br />通常都写成这样:static_cast<type>(expression)<br />1:static_cast用法<br />比如把一个int类型转换成double型,<br />传统的是:<br />int firstNumber,secondNumber;<br />double result = ((dou
2011-01-08 15:29:00 1526
原创 C++基础之:引用与指针的区别
<br /> <br />在C++中指针和引用的功能很相似,共同点为都可以直接或者是间接地指代其他的对象。下面介绍不同点<br />1:操作符<br />指针使用“*”和“->”操作符,引用使用的是“.”<br />2:变量初始化<br />首先引用不能为空,指针可以为空。<br />引用必须要指代对象,指针可以在初始化时<br />string &str; //错误,引用不能为空<br />string s("liyachao");<br />string &rs=s; //可以<br />strin
2011-01-07 22:32:00 1262
原创 C++基础之:对象的静态类型和动态类型
<br /> <br />由于继承导致对象的指针和引用具有两种不同的类型:静态类型和动态类型。<br />静态类型:指针或者是引用声明时的类型。<br />动态类型:由他实际指向的类型确定。<br />例如:<br />GameObject *pgo= //pgo静态类型是GameObject *<br />new SpaceShip;//动态类型是SpaceShip*<br /><br />Asterioid *pa = new Asterioid;//pa的静态类型是Asterioid *<br />/
2011-01-07 20:48:00 6769
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人