摘要: 嵌套类局部类《c++ primer 3th》C++嵌套类1、嵌套类的名字只在外围类可见。2、类的私有成员只有类的成员和友元可以访问,因此外围类不可以访问嵌套类的私有成员。嵌套类可以访问外围类的成员(通过对象、指针或者引用)。3、一个好的嵌套类设计:嵌套类应该设成私有。嵌套类的成员和方法可以设为pub... 阅读全文
posted @ 2014-05-29 22:03 Jessica程序猿 阅读(362) 评论(0) 推荐(0) 编辑
摘要: Screen.h#ifndef SCREEN_H#define SCREEN_H#include class Screen {public: typedef std::string::size_type pos; // Action is a type that can point to... 阅读全文
posted @ 2014-05-29 16:16 Jessica程序猿 阅读(302) 评论(0) 推荐(0) 编辑
摘要: C++中,成员指针是最为复杂的语法结构。但在事件驱动和多线程应用中被广泛用于调用回叫函数。在多线程应用中,每个线程都通过指向成员函数的指针来调用该函数。在这样的应用中,如果不用成员指针,编程是非常困难的。 刚遇到这种语法时也许会让你止步不前。但你会发现,使用恰当的类型定义之后,复杂的语法是可以... 阅读全文
posted @ 2014-05-29 16:11 Jessica程序猿 阅读(618) 评论(0) 推荐(0) 编辑
摘要: 在揭开typeid神秘面纱之前,我们先来了解一下RTTI(Run-Time Type Identification,运行时类型识别),它使程序能够获取由基指针或引用所指向的对象的实际派生类型,即允许“用指向基类的指针或引用来操作对象”的程序能够获取到“这些指针或引用所指对象”的实际派生类型。在C++... 阅读全文
posted @ 2014-05-29 12:58 Jessica程序猿 阅读(763) 评论(0) 推荐(0) 编辑
摘要: #include using std::bad_cast;#include using std::cout; using std::endl;struct A { virtual ~A() { } };struct B : virtual public A { /* . . . */ };struc... 阅读全文
posted @ 2014-05-29 12:53 Jessica程序猿 阅读(298) 评论(0) 推荐(0) 编辑
摘要: dynamic_cast (expression)dynamic_cast运算符,应该算是四个里面最特殊的一个,因为它涉及到编译器的属性设置,而且牵扯到的面向对象的多态性跟程序运行时的状态也有关系,所以不能完全的使用传统的转换方式来替代。但是也因此它是最常用,最不可缺少的一个运算符。与static... 阅读全文
posted @ 2014-05-29 09:43 Jessica程序猿 阅读(2364) 评论(0) 推荐(0) 编辑