五月花

时间在哪里,成就就在哪里!

C++重载(overload)、重写(overwrite,也称隐藏)、覆盖(override)

一、重载(overload)函数名相同,但是它的参数列表中参数的个数、类型或顺序不同。不能靠返回类型来判断。这个最简单,name mangling。 二、重写(overwrite,也称隐藏)重写一定是分别位于派生类与基类中。对于声明在内层作用域的函数,并不会重载声明在外层作用域的函数。因此...

2015-04-22 12:18:36

阅读数 650

评论数 0

命名空间、using声明和using指示【附送彩蛋】

一般来说,使用using声明总是对的,使用using指示总是会带来风险的。using指示引发的二义性错误只有在使用了冲突的名字的地方才能被发现。这种延后的检测意味着可能在特定库引入很久很久之后,才爆发冲突。using声明不是不会引起冲突,而是,由using声明引起的二义性问题在声明处就会被发现,无...

2015-04-21 20:19:47

阅读数 1615

评论数 1

C++的三种继承方式(本文先不涉及虚继承)

private继承截断了继承的访问通道,下一个孙子派生类将无法访问爷爷基类的public和protected成员,同时关闭了派生类对象直接访问基类public成员的通道。 protected继承则依旧保持了继承访问通道的畅通,但同时也关闭了派生类对象直接访问基类public成员的通道。 派生列表...

2015-04-17 14:54:27

阅读数 784

评论数 1

extern "C" 学习笔记

从直观上来讲,extern "C" 显然有两层含义。其一,是 被它修饰的目标是“extern”,即该目标具有外部链接性,可以在其他编译单元(文件)中被引用。其二,被它修饰的目标是“C”类型的,即编译器或链接器要按照C的编译规则来对其进行编译或链接。 作为一种面向对象的语...

2015-04-03 10:01:16

阅读数 345

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭