一、位运算应用:1、判断某一位是否为12、只改变其中某一位,而保持其它位都不变位运算操作:1、&按位与(双目):将某变量中的某些位清0(与0位与)且同时保留其它位不变(与1位与);获取某变量中某一位(与其位与后判断是否为该数)2、|按位或(双目):将某变量中的某些位置1(与1位或)且保留其它位不变3...
分类:
其他好文 时间:
2014-07-22 23:10:13
阅读次数:
279
切勿重新定义继承来的带缺省参数的函数。我们知道,继承来的函数是virtual 的,至于原因在上一节中已经说明了,即“切勿重新定义父类non-virtual函数”。所以确切的描述应该是“切勿重新定义继承来的带缺省参数的virtual函数”。因为缺省参数是静态绑定,而virtual是动态绑定。typed...
分类:
编程语言 时间:
2014-07-16 21:36:12
阅读次数:
199
前些日子,有个同学问我一个关于虚函数的缺省参数问题。他是从某个论坛上看到的,但是自己没想通,便来找我。现在分享一下这个问题。先看一小段代码:
#include
using namespace std;
class A
{
public:
virtual void Fun(int number = 10)
{
cout << "A::Fun ...
分类:
编程语言 时间:
2014-07-10 23:05:08
阅读次数:
297
由于重新定义继承而来的non-virtual函数是不正确的(见上一个条款),所以这个条款就将问题局限于:绝不重新定义继承一个带有缺省参数值的virtual函数。
(一)
virtual函数是动态绑定的,而缺省参数却是静态绑定。
对象的所谓静态类型,是它在程序中被声明时所采用的类型。
你可能会在“调用一个定义于derived
class 内的virtual函数”的同时,却使用了ba...
分类:
编程语言 时间:
2014-07-04 08:23:12
阅读次数:
412
首先,此处的函数指的是 virtual 函数,为什么不是non-virtual函数呢?是因为在public继承中,non-virtual函数表示派生类是需要继承其接口与其强制实现的。如果你的Derived已经在考虑重写non-virtual函数了,那么你是应该好好审视一下,在此处使用 public继承是否合理了。
因此,本文只讲解virtual函数的缺省参数值,例如下面的代码:
{CSDN...
分类:
其他好文 时间:
2014-06-25 07:33:08
阅读次数:
185
本文主要参考《Effective C++
3rd》中的第六章部分章节的内容。关注的问题集中在继承、派生、virtual函数等。如:virtual? non-virtual? pure virtual?
缺省参数值与virtual函数有什么交互影响? 继承如何影响C++的名称查找规则? 什么情况下有比...
分类:
编程语言 时间:
2014-05-24 01:20:31
阅读次数:
468
第十章 深入函数1.
普通函数的重载将相同名字不同类型的函数重复调用多次来处理不同类型的数据①根据参数类型不同进行重载②根据参数个数不同进行重载2. 函数的缺省参数具有默认参数的函数
重载的是参数的数值☆可见函数重载主要是根据参数进行重载(函数都可以被重载)3. 重载构造函数4. 成员变量的初始化有...
分类:
其他好文 时间:
2014-05-19 17:05:21
阅读次数:
299