this指针不全等于对象地址
一般情况下都说this指针等于对象地址,当对象调用类的成员函数时,对象会传给成员函数一个this指针,也就是自己的地址来引用、标识自己。
正是在这个思想下,导致我调试一个问题调试了整整一天。也许是本人学艺不精,但是据我所了解到的关于C++this指针就是这么说的。
于是我说这样说不对。
事实说话。环境是VS2012。
在子类没有虚函数的时候,输出的两个数字一样。
在父类没有虚函数,子类有虚函数的时候,子类的this比自己的实际地址小4字节。我只知道虚函数表的地址是存放在类对象的头部的。但是我并不知道对对象取地址后,这个地址没有把虚函数表的地址包含进去,导致严重阻碍开发进度。
注意此种情况发生的条件:父类没有虚函数,子类有虚函数。只要父类和子类都有虚函数,那么this===对象地址。
这个就是编译器决定的,可能是个bug,知道就好。
希望对你们有帮助。
this指针不全等于对象地址相关推荐
- C++ 指向子类的指针转型为指向父类类型指针之后指向的对象地址不变
C++ 指向子类的指针转型为指向父类类型指针之后指向的对象地址不变 例子: class A{int a;int b; };class B:public A{int c; };int main(){B* ...
- C++ 笔记(14)— 指针(指针声明、取地址、取值、new/delete、NULL指针、指针运算、指针数组、数组指针、指针传递给函数、从函数返回指针)
1. 声明指针 指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址.就像其他变量或常量一样,您必须在使用指 针存储其他变量地址之前,对其进行声明. 指针变量声明的一般形式为: type * ...
- python中id地址什么意思_id()在python中返回的对象地址是什么?
在函数返回时有一个身份的识别,就像我们寄包裹的时候都有一个单号,便于大家随时跟踪它的进度.我们今天要讲的内置函数id()同样可以看作是用来进行身份识别的.那么我们进一步思考,id()最后返回的地址究竟 ...
- C++中的函数指针和函数对象总结
篇一.函数指针 函数指针:是指向函数的指针变量,在C编译时,每一个函数都有一个入口地址,那么这个指向这个函数的函数指针便指向这个地址. 函数指针的用途是很大的,主要有两个作用:用作调用函数和做函数的参 ...
- 【转】回调函数,函数指针与函数对象
原文出处:http://shudingbo.spaces.live.com/blog/cns!C33400475B08F157!423.entry?wa=wsignin1.0&sa=24651 ...
- vector所存储对象地址在vector操作过程中发生变化
vector所存储对象地址在vector操作过程中发生变化 在编写搜索算法存储搜索路径的时候,以为无论如何vector的所有元素的地址都不变,比如vector<int> [0] ,就想去记 ...
- 父类指针指向子类对象的问题、父类对象和子类对象之间的问题
一.父类指针指向子类对象 先上代码: class Base {public:void base_fun1() {}virtual void base_fun2() {cout << &qu ...
- C++ 多个指针指向同一个对象
问题 在使用c++ 指针的时候,经常会遇到如下情况 int *i = new int(1);int *j = i;delete i;i = NULL;if(j) {//此处代码依然运行std::cou ...
- 数组指针——指向数组对象的指针
转载自:数组指针 数组指针--指向数组对象的指针 数组(Array)是一系列具有相同类型的数据的集合,每一份数据叫做一个数组元素(Element).数组中的所有元素在内存中是连续排列的,整个数组占用的 ...
最新文章
- 那些年值得铭记的时刻
- 关于Linux的用户管理的相关研究-------(一)
- 【leetcode】Search in Rotated Sorted Array II(middle)☆
- Windows环境配置Anaconda+cuda+cuDNN+pytorch+jupyter notebook
- premature end of file错误
- [java] 找出字符串中出现最多的字符和出现的次数
- 【Vue.js源码解析 三】-- 模板编译和组件化
- C++ Primer 第五版 第6章 6.7——函数指针习题答案
- 一组关于女生的秘密数据!
- redis的zset类型(有序集合)
- 李礼辉:如何进行必要的数字金融制度建设等问题值得关注
- zlib库对文件进行压缩和解压操作
- 浅谈各种连接池中连接数量的设置
- Tomcat 8 中的startup.bat
- 华三comware跳槽_H3C Comware
- excel锁定计算机,excel表格根据时间锁定如何操作
- ps裁剪和裁切的区别_PS裁剪和裁切的区别
- pyhton爬虫爬取100首诗
- 由于计算机启动了配置文件,提示由于启动计算机时出现了页面文件配置问题解决方法...
- ant design of vue中表格列内容过长,需要截取并且鼠标滑过悬浮显示全部内容