- 博客(3)
- 收藏
- 关注
原创 RTTI之dynamic_cast的理解
dynamic_cast的作用:将基类类型的指针或引用安全的转换为派生类型的指针或引用。在C++primer上看到一句话RTTI运算符特别适用于以下情况:我们想使用基类对象的指针或引用执行某个派生类操作并且该操作不是虚函数。 一开始我理解成把可以将指向基类对象的指针通过RTTI运算符dynamic_castzh转换为派生类指针,然后可以执行派生类操作但我心中闪过一丝疑虑,觉得不应该...
2018-08-16 18:11:31 418
原创 类的成员隐藏,覆盖与重载
C++令人迷惑的隐藏规则(转自林锐的《高质量c-c++编程》)8.2.2 令人迷惑的隐藏规则 本来仅仅区别重载与覆盖并不算困难,但是C++的隐藏规则使问题复杂性陡然增加。这里“隐藏”是指派生类的函数屏蔽了与其同名的基类函数,规则如下:(1)如果派生类的函数与基类的函数同名,但是参数不同。此时,不论有无virtual关键字,基类的函数将被隐藏(注意别与重载混淆)。(2)如果派生类的函数与基类的函数...
2018-07-14 19:39:41 498
原创 istringstream的小陷阱
在做Cprimer++文本查询程序,遇到了程序无法读取文本输入数据的问题,一开始以为是文件打开失败加入了一条判断语句,文件正常打开,于是就苦逼的慢慢调BUG,最后锁定罪魁祸首是istringstream这个类创建的一个对象,贴上演示代码#define _CRT_SECURE_NO_WARNINGS#include <iostream>#include <vector>...
2018-06-17 15:18:38 879
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人