C++ 类和标准库 1. 类中的this指针:成员函数通过一个名为this的额外隐式参数来访问调用它的对象,当调用一个成员函数时,实际是用该函数的对象地址初始化this,this是一个常量指针总是指向当前对象。 2. const成员函数:this的类型是指向类类型非常量版本的常量指针,eg:Sale ...
分类:
编程语言 时间:
2019-12-27 00:08:35
阅读次数:
95
封装:1.抽象出数据成员、成员函数 2.访问控制,类本身1)private 外界不可见,不能直接访问2)外界不可见,不能直接访问;子类可以访问protected3)public外界可以直接访问 继承: 继承访问控制: 1.不能直接拿父亲的私房钱:派生类不能访问基类的私有成员2. 可以问父亲要钱:通过 ...
分类:
编程语言 时间:
2019-12-25 23:35:29
阅读次数:
96
多态的基本介绍 + 多态基础 面向对象新求 C++编译器提供的多态解决方案 多态意义、多态成立的是三个条件 多态理论基础 + 多态面试题强化 多态的理解 C++编译器如何实现多态 重载重写重定义 虚析构函数 可否为每个类的普通成员函数定义为虚函数 构造函数中调用虚函数,能实现多态吗? 虚函数表指针v ...
分类:
编程语言 时间:
2019-12-22 10:54:21
阅读次数:
89
继承的基本概念 + 继承和派生 继承概念 派生类的访问控制(继承三种方式、类三种访问控制、三看原则)综合训练 继承中的构造和析构 + 类型兼容性原则 + 继承中的构造和析构 + 继承中同名成员函数、成员变量处理方法 + 继承中的static关键字 + 继承概念 + 派生类的访问控制(继承三种方式、类 ...
分类:
编程语言 时间:
2019-12-22 10:35:56
阅读次数:
71
主要差别: list 是双向链表,forward_list 是双向链表。 成员函数差异: * forward_list 中设计的一系列 xxx_after() 的原因: 其中的元素仅知道后面的元素,不知道前面的元素。(单向链表的特性)所以类似于 insert 这样的操作,需要指定前一个元素的迭代器, ...
分类:
编程语言 时间:
2019-12-21 11:47:19
阅读次数:
115
#include #include using namespace std; int main() { int a=10; double b=314159.26; cout<<a<<endl; cout.unsetf(ios::dec); cout.setf(ios::oct|ios::showba... ...
分类:
编程语言 时间:
2019-12-19 13:14:00
阅读次数:
111
C++实现委托机制(一) 1.引言: 如果你接触过C#,你就会觉得C#中的delegate(委托)十分灵巧,它的用法上和C\C++的函数指针很像,但是却又比C\C++的函数指针更加灵活。并且委托可以一对多,也就是可以注册多个函数,甚至是某个类的非静态成员函数。而实现事件消息机制【1】也十分依赖于委托... ...
分类:
编程语言 时间:
2019-12-18 14:44:37
阅读次数:
104
在C++中,_beginthreadex 创建线程是很麻烦的。要求入口函数必须是类的静态函数。 通常,可以采用thunk,或者模板来实现。 因C++ 11中引入了 std::async ,可以很好的解决这个问题了。 值得注意的是,在循环中 std::async 创建线程,我试了好多次总是失败,后来看 ...
分类:
编程语言 时间:
2019-12-17 18:49:33
阅读次数:
340
inline——嵌入代码行中,类似宏但更强大(宏不能做类型检查) 空间换时间 不是defination,而是declaration 建议将两三行的短函数,或会被多次调用(循环中的函数)定义成inline 大函数(>20行),递归函数 在.h文件中定义函数体即可,不需要.cpp文件 类的成员函数直接在 ...
分类:
编程语言 时间:
2019-12-16 22:09:02
阅读次数:
83