热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

对象内存地址

主题
主  题: 感觉有意思,大家共享
作  者:   powerlang ()
等  级:  
信 誉 值:   100
所属论坛:   C/C++ C++ 语言
问题点数:   20
回复次数:   14
发表时间:   2007-5-31 12:47:39
 
 

//例4

//程序作者:管宁
//站点:www.cndev-lab.com
//所有稿件均有版权,如要转载,请务必著名出处和作者

#include
using namespace std;

class Test
{
public:
Test(int a = 0)
{
cout< Test::a = a;
}
Test(Test &temp)
{
cout<<"载入拷贝构造函数!"< Test::a = temp.a;
}
~Test()
{
cout<a< cin.get();
}
Test operator +(Test& temp2)
{
cout< Test result(this->a+temp2.a);
return result;
}
operator int()
{
cout<a< return Test::a;
}
public:
int a;
};
int main()
{
Test a(100),b(100);
cout<<"a的内存地址:"<<&a<<" | b的内存地址:"<<&b< Test c=a+b;
cout<<"c的内存地址:"<<&c< cout< system("pause");
}
回复人:powerlang() ( 一级(初级)) 信誉:100 2007-5-31 12:48:39 得分:0
 
 
?

VC结果:
0012FF70:载入构造函数!100
0012FF6C:载入构造函数!100
a的内存地址:0012FF70 | b的内存地址:0012FF6C
0012FF70|0012FF6C载入加运算符重载函数!
0012FEF4:载入构造函数!200
载入拷贝构造函数!
0012FEF4:载入析构函数!200

c的内存地址:0012FF68
200
请按任意键继续. . .
0012FF68:载入析构函数!200

0012FF6C:载入析构函数!100

0012FF70:载入析构函数!100

Top
 
回复人:powerlang() ( 一级(初级)) 信誉:100 2007-5-31 12:49:03 得分:0
 
 
?

gcc:
0x22ff68:载入构造函数!100
0x22ff58:载入构造函数!100
a的内存地址:0x22ff68 | b的内存地址:0x22ff58
0x22ff68|0x22ff58载入加运算符重载函数!
0x22ff38:载入构造函数!200
0x22ff38:载入转换运算符函数的内存地址:200
0x22ff48:载入构造函数!200
0x22ff38:载入析构函数!200

c的内存地址:0x22ff48
200
请按任意键继续. . .
0x22ff48:载入析构函数!200

0x22ff58:载入析构函数!100

0x22ff68:载入析构函数!100
Top
 
回复人:Chiyer(星羽) ( 五级(中级)) 信誉:100 2007-5-31 12:49:06 得分:0
 
 
?


Top
 
回复人:taodm((不能收CSDN社区短信息,请莫浪费精力)) ( 两星(中级)) 信誉:100 2007-5-31 12:59:29 得分:0
 
 
?

貌似NRV优化问题。

Top
 
回复人:expter(Give to dream of a new height,My2007!) ( 二级(初级)) 信誉:100 2007-5-31 13:10:02 得分:0
 
 
?

什么?

a的内存地址:0012FF70 | b的内存地址:0012FF6C
怎么B的地址比A小啊。。
Top
 
回复人:taodm((不能收CSDN社区短信息,请莫浪费精力)) ( 两星(中级)) 信誉:100 2007-5-31 13:17:19 得分:0
 
 
?

如果有人告诉过你B的地址一定比A大,那就是你被骗了。
C/C++没规定过这东西。事实也摆在面前了。
修改掉错误的认识就可以了。
Top
 
回复人:shuangyp() ( 一级(初级)) 信誉:100 2007-5-31 13:18:01 得分:0
 
 
?

我是菜鸟,我不懂!
Top
 
回复人:zycy(混世魔王) ( 一级(初级)) 信誉:100 2007-5-31 13:40:08 得分:0
 
 
?

很棒的演示程序,其他没看出来.......
Top
 
回复人:powerlang() ( 一级(初级)) 信誉:100 2007-5-31 21:56:22 得分:0
 
 
?

楂樻墜閮藉摢鍘讳簡锛屾病浜虹湅寰楁噦鍚
Top
 
回复人:jixingzhong(瞌睡虫·星辰) ( 四星(高级)) 信誉:100 2007-5-31 22:05:51 得分:0
 
 
?

just keep it in your mind ...
Top
 
回复人:yutaooo() ( 四级(中级)) 信誉:100 2007-5-31 23:18:18 得分:0
 
 
?

鏍堟槸寰€涓嬪闀跨殑銆?杩欎釜鏈夊暐濂藉鎬殑鍟婏紵

zhan(stack) shi wang xia zeng zhang de . zhe ge you sha hao qi guai de a ?


Top
 
回复人:powerlang() ( 一级(初级)) 信誉:100 2007-06-01 12:29:52 得分:0
 
 
?
两种不同的编译器,两种不同的结果
Top
 
回复人:yuyunliuhen() ( 二级(初级)) 信誉:100 2007-06-01 12:51:33 得分:0
 
 
?
Have a look!
Top
 
回复人:yuyunliuhen() ( 二级(初级)) 信誉:100 2007-06-01 13:01:59 得分:0
 
 
?
楂樻墜閮藉摢鍘讳簡锛屾病浜虹湅寰楁噦鍚
什么意思?
Top
 
 
推荐阅读
  • Here是指向最小代码的链接,如果消失了, ... [详细]
  • 开发笔记:实验7的文件读写操作
    本文介绍了使用C++的ofstream和ifstream类进行文件读写操作的方法,包括创建文件、写入文件和读取文件的过程。同时还介绍了如何判断文件是否成功打开和关闭文件的方法。通过本文的学习,读者可以了解如何在C++中进行文件读写操作。 ... [详细]
  • ProblemDescriptionAninchwormisatthebottomofawellninchesdeep.Ithasenoughene ... [详细]
  • 要求:海伦公式:ssqrt(p*(p-a)*(p-b*)(p-c)),其中p(a+b+c)2,a,b,c为三角形的三个边。定义两个带参数的宏,一个用来求p,另一个用来求s题目分 ... [详细]
  • 第3章 感受(一)——3.1. Hello world 经典版
    [回到目录]白话C++第3章.感受Helloworld!,HelloC++,我们来了!3.1.Helloworld经典版毫无疑义,一 ... [详细]
  • CC++如何复制 ... [详细]
  • 如何解决《C++getline传递文件或cin》经验,为你挑选了1个好方法。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • 本文讨论了使用差分约束系统求解House Man跳跃问题的思路与方法。给定一组不同高度,要求从最低点跳跃到最高点,每次跳跃的距离不超过D,并且不能改变给定的顺序。通过建立差分约束系统,将问题转化为图的建立和查询距离的问题。文章详细介绍了建立约束条件的方法,并使用SPFA算法判环并输出结果。同时还讨论了建边方向和跳跃顺序的关系。 ... [详细]
  • 本文介绍了一种划分和计数油田地块的方法。根据给定的条件,通过遍历和DFS算法,将符合条件的地块标记为不符合条件的地块,并进行计数。同时,还介绍了如何判断点是否在给定范围内的方法。 ... [详细]
  • 本文介绍了P1651题目的描述和要求,以及计算能搭建的塔的最大高度的方法。通过动态规划和状压技术,将问题转化为求解差值的问题,并定义了相应的状态。最终得出了计算最大高度的解法。 ... [详细]
  • 本文介绍了深入浅出Linux设备驱动编程的重要性,以及两种加载和删除Linux内核模块的方法。通过一个内核模块的例子,展示了模块的编译和加载过程,并讨论了模块对内核大小的控制。深入理解Linux设备驱动编程对于开发者来说非常重要。 ... [详细]
  • 字符设备驱动leds
    内核版本:4.12.9编译器:arm-linux-gcc-4.4.3本驱动基于jz2440v2开发板,实现3个led设备的驱动程序。代码如下:1#include ... [详细]
  • 1.      准备工作: 程序:MinGW-3.1.0-1.exe     windows下的gcc,编译c语言的工具下载地址: http:umn.dl.sourceforge. ... [详细]
  • Note:ThisproblemisthesamewihtEgihtQueenproblem,whichisaclassicDFSproblemButifyouuseDFSd ... [详细]
author-avatar
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有