摘要: 这个题材其实和继承无关,而是和作用域(scopes)有关。 int x; void someFunc() { double x; std::cin >> x; } 这个指涉的是local变量x,而不是global变量x,因为内存作用域会的名称遮掩外围作用域的名称。 当编译器处于someFunc的作用域内并遭遇名称x... 阅读全文
posted @ 2012-02-09 21:38 lidan 阅读(410) 评论(0) 推荐(0)
摘要: 如果你令class D以public形式继承class B,你便是告诉c++编译器,每一个类型为D的对象同时也是一个类型为B的对象,反之不成立。 B比D表现出更一般化的概念,D比B更特殊化的概念。任何函数如果期望获得一个类型为B(或pointer to B或reference-to-B)的实参,都也愿意接受一个D对象(或pointer-to-D或reference-to-D)。这个论点只有... 阅读全文
posted @ 2012-02-09 19:56 lidan 阅读(421) 评论(0) 推荐(0)