
总结
lwwworkspace
学生
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++多态性一些总结
<br />#include<iostream> using namespace std; /* 总结多态性几个要点: 1、一定要有虚函数,非虚函数不能实现多态 2、子类一定要改写父类的虚函数,不改写不能实现多态 3、必须用父类指针指向子类对象来调用虚函数,直接用子类指针 来调用不是多态性,而只是普通调用 4、有一个纯虚函数的类就叫抽象类 5、虚函数里面可以写代码,且需要声明 */ class Shape { public: void draw() {原创 2010-08-06 17:56:00 · 610 阅读 · 0 评论 -
explicit一些用途
<br />explicit是在类里面声明构造函数的,它的作用是可以防止对象间的隐式转换。被声明为explicit的构造函数通常比其非explicit更受欢迎,因为它们禁止编译器执行非预期的类型转换。除非有一个好理由允许构造函数被用于隐式类型转换,否则我会把它声明为explicit。 例如: class Dog { public: Dog() {} /* explicit */ Dog(int i) {} void func(Dog dog) { } }; int _tmai原创 2010-08-06 18:01:00 · 477 阅读 · 0 评论 -
dynamic_cast 的一些用途
<br />要使用dynamic_cast动态类型转换,必须满足下面条件: 1、基类至少要有一个虚函数 2、需要多态性 3、编译器打开RTTI检查 dynamic_cast功能: 当某些情况下不能使用运行时多态的时候,就可以用dynamic_cast代替,例如: struct Base { virtual void func(){} }; struct D : public Base { void func(){} void f(){} }; void tes原创 2010-08-06 18:05:00 · 759 阅读 · 0 评论 -
const的一些总结
<br />1 int* p;<br />2 const int* p;<br />3 int const* p;<br />4 int* p const;<br />5 const int* p const;<br />要判断const修饰指针的特性,我们可以看const这个关键字在*号的左边还是右边。<br />const int* p;<br />const在*号的左边,说明指针p指向的内容的值不能被修改,而指针的地址可以被修改,即可以从新指向到别的变量。<br />int* p const;<br原创 2010-08-06 18:07:00 · 323 阅读 · 0 评论 -
链栈的一些操作
<br />LinkStack.h头文件<br />#ifndef LINKSTACK_H_H #define OK 0 #define ERROR -1 typedef int type; typedef struct LNode { type data; struct LNode *next; }*LinkStack; int init_linkStack(LinkStack*); int make_node(LNo原创 2010-08-06 20:36:00 · 377 阅读 · 0 评论