- 博客(8)
- 资源 (2)
- 收藏
- 关注
原创 C++类层次结构
在一个继承图里,每个名字用virtual刻画的基类,将总是用这个类的同一个对象表示。在另一方面,没有用virtual描述的每个基类都有定义自己的子对象去表示它class Bclass XX : B {}; //B是私有基类struct YY : B {}; //B是公
2011-08-18 17:58:08 3786
原创 C++异常处理
重新抛出采用一个不带运算对象的throw表示,重新抛出的那个就是原来捕捉到的那个异常。异常也为从构造函数里报告出错的问题提供了一个解决方案。由于构造函数无法返回一个独立的值供调用程序检查,传统的可能的解决方法有:1、返回一个处于错误状态的对象,相信用户有办法检查其状态
2011-08-18 11:46:15 610
原创 C++模板
在类外定义类模板成员时,必须显示的将他们定义为模板。templateString::String(){}templateString::String(){}以上两种定义都可以类模板的名字不能重载,例如templateclass St
2011-08-17 15:37:03 578
原创 C++运算符重载
对于二元运算符,aa@bb可以理解为aa.operator@(bb),或者理解为operator@(aa,bb)。对于一元运算符,无论它是前缀的还是后缀的,都可以定义为无参数的非静态成员函数,或者定义为取一个参数的非成员函数。对任何前缀一元运算符@,@aa可以解释为aa.oper
2011-08-16 16:12:47 503
原创 C++函数
对非const引用参数不允许做类型转换,例如:void update(float& i);void g(double d, float r){ update(2.0f); //错误 update(r); //传递r的引用 update(
2011-08-04 10:40:38 491
原创 C++指针、数组和结构
没有任何对象会被分配到地址0。因此,0被当做一个指针文字量,表明一个指针当时并没有指向任何对象。在C中流行的是用一个宏NULL表示0指针。由于C++收紧的类型检查规则,采用普通的0而不是一些人建议的NULL宏,带来的问题会更少一些。数组元素的个数,即数组的界,必须是一个常量表
2011-08-02 14:12:00 624
原创 C++类型和声明
枚举和类被称为用户定义类型,他们必须由用户定义出来,而不能事先没有声明就直接使用,例如在使用CMyclass a之前必须定义CMyclass类型。内部类型可以直接使用,例如可以直接这样int a。按照定义,true具有值1,而false具有值0。与此相对应,整数可以隐式地
2011-08-01 16:15:30 1017
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人