假设有如下所示的一个继承关系:

对于实例:Derive d; 的虚函数表如下:

例如:

class Base
{
public:virtual void Show(){cout << a << endl;}static int a;
};class Derived : public Base
{
public:virtual void Show(){cout << a << endl;}static int a;
};int Base::a = 1;
int Derived::a = 2;int main(int argc, char *argv[])
{Base *p = new Derived;p->Show();delete p;p = NULL;return 0;
}

则输出为1,理由是虚函数表中指向Show是Base::Show,因此,很自然里面调用的变量只能是Base作用域的a!

转载于:https://www.cnblogs.com/bonelee/p/5951496.html

虚函数中的变量作用域问题相关推荐

  1. Python函数中的变量作用域

    目录 一.变量作用域 二.全局变量和局部变量 一.变量作用域 变量作用域,其实就是变量可以在哪些范围内可以使用,哪些范围内不可以使用.这里只讲函数中变量的作用域,局部变量和全局变量 面向过程编程就涉及 ...

  2. matlab中函数参数和变量作用域

    函数参数和变量作用域 函数参数的可调性 全局变量 局部变量 函数参数的可调性 nargin →判断输入实参的个数 nargout →判断输出实参的个数 这两个预定义变量有什么用处呢?看下面一个函数: ...

  3. Python中令人头疼的变量作用域问题,终于弄清楚了

    来源:Python数据之道 作者:大奎  整理:阳哥 学习Python变量过程中,曾经为变量混乱的作用域问题头疼不已,全局变量.局部变量.自由变量傻傻分不清,今天来跟大家分享 Python变量作用域 ...

  4. Linux中shell变量作用域笔记

    变量的作用域又可以叫做"命名空间",表示变量的上下文,同名的变量可以在多个命名空间定义,彼此互相独立. 在linux系统中,不同的进程ID的Shell默认为一个不同的命名空间. 比 ...

  5. 函数二的变量作用域,多函数执行,返回值,函数参数,拆包,引用

    函数二 一.变量作用域 1.局部变量是函数内部变量,在函数临时保存数据,函数调用完则销毁,在函数外访问即报错 2.全局变量函数内外都可访问,当不同函数都要用到某一变量时,则可使用全局变量 def fu ...

  6. 【Python】Python中令人头疼的变量作用域问题,终于弄清楚了

    [Python]Python中令人头疼的变量作用域问题,终于弄清楚了_fengdu78的博客-CSDN博客 [Python]Python中令人头疼的变量作用域问题,终于弄清楚了_fengdu78的博客 ...

  7. php 函数静态变量,php 函数中静态变量使用的问题实例分析

    本文实例讲述了php 函数中静态变量使用的问题.分享给大家供大家参考,具体如下: function msg() { static $a = 0; echo $a++, ' '; } msg(); ms ...

  8. JavaScript调用其他函数中的变量

    JS中一个函数调用另一个函数中的变量 funcA() {this.location = [];this.location = 100; }, funcB() {cc.log(this.location ...

  9. Javascript 中的变量作用域问题

    Js中的变量作用域问题: 1.没有块级作用域.Js中的变量作用域不是以{}为界的,不像C/C++/Java. 如: 1 if(true){ 2 var name = "qqyumidi&qu ...

最新文章

  1. Oracle笔记 十、PL/SQL存储过程
  2. Math.Floor()和Math.Truncate()之间的区别
  3. php 浏览商品记录,php浏览历史记录
  4. 移民申请--申请澳大利亚技术移民的职业评估有技巧(2)
  5. Javascript设计模式理论与实战:适配器模式
  6. Tengine---nginx平台初探
  7. 《刷新》:拥抱同理心,建立成长型思维
  8. 性能优化篇(2):不能忽视的DOM元素
  9. 钉钉开放平台:内网穿透工具 - 服务器免费打造教程
  10. live555+ffmpeg如何提取关键帧(I帧,P帧,B帧)
  11. 程序员最喜欢什么样的项目经理?
  12. Html中的表格、Table和div,表格页面、员工登记表、Div代码
  13. 计算机教室 设备负荷,设备建设标准和规范教室线缆布线.ppt
  14. 关于Three.js 加载地面贴图的坑
  15. windows下使用route添加路由
  16. 转:企业最稀缺和最具价值的人力资源到底是什么?
  17. 8通道CAN FD,更强大的数据记录仪GL3400
  18. ie9 下面输入框后面怎么出现一个黑色叉叉
  19. org.eclipse.wst.common.project.facet.core.xml
  20. 达内不建议我学python-交钱了,学了3天Python编程,我想放弃了......

热门文章

  1. JavaScript 工作原理(二)-如何在 V8 引擎中书写最优代码的 5 条小技巧(译)
  2. 计算机电缆和控制电缆区别,动力电缆和控制电缆有啥区别?
  3. java批量导出word_java 批量生成word 文件
  4. python判断括号有效,在Python中检查括号是否平衡
  5. 二进制补码求值用c语言,C语言程序设计第2章数据类型.运算符与表达式.ppt
  6. 数格子算面积的方法_水基材料防锈试验方法:铸铁粉末法
  7. python【力扣LeetCode算法题库】3- 无重复字符的最长子串
  8. python基础练习(二)
  9. php yii 模板引擎,模板引擎(Template Engines)
  10. 小程序的前端坑(持续更新)