- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
string day; class Fruit { int price; string name; void init(int p,string s){price=p; name=s;} void print(){ Print(On ,day,, the price of ,name, is ,price,\n);} } class Apple extends Fruit { string color; void setcolor(string c){color=c;} void print(){ Print(On ,day,, the price of ,color, ,name, is , price,\n);} } 运行时存储组织 过程调用与参数传递 活动记录中与过程/函数调用相关的信息 典型的活动记录形式举例 寄存器保存区 过程实际参数 固定大小的局部数据区 动态数组区 活动记录起始点 活动记录的固定大小部分结束点 调用程序返回地址 其它控制信息 返回值(仅适于函数) 运行时存储组织 过程调用与参数传递 最常见的参数传递方式 传值 call-by-value 传递的是实际参数的右值(r-value) 传地址 call-by-reference(-address, -location) 传递的是实际参数的左值(l-value) 注 表达式的左值代表存储该表达式值的地址 表达式的右值代表该表达式的值 运行时存储组织 过程调用与参数传递 参数传递方式 call-by-value 举例 调用swap(a,b) 过程将不 会影响a和b的值,其结果 等价于执行下列语句序列: x :=a; y :=b; temp :=x; x :=y; y :=temp procedure swap(x,y:integer); var temp:integer; begin temp:=x; x:=y; y:=temp end; 运行时存储组织 过程调用与参数传递 参数传递方式 实现 call-by-value 形式参数当作过程的局部变量处理,即在被调过程 的活动记录中开辟了形参的存储空间,这些存储位 置用以存放实参 调用过程计算实参的值,将其放于对应的存储空间 被调用过程执行时,就像使用局部变量一样使用这 些形式单元 运行时存储组织 过程调用与参数传递 参数传递方式 call-by-reference 举例 调用swap(a,b) 过程将交 换 a 和 b 的值 procedure swap(var x,y:integer); var temp:integer; begin temp:=x; x:=y; y:=temp end; 运行时存储组织 过程调用与参数传递 参数传递方式 实现 call-by-reference 把实在参数的地址传递给相应的形参,即调用过程把一个指向 实参的存储地址的指针传递给被调用过程相应的形参: 若实在参数是一个名字,或具有左值的表达式,则传递左值 若实在参数是无左值的表达式,则计算该表达式的值,放入一 存储单元,传此存储单元地址 面向对象程序运行时组织 理解“类”和“对象”的角色 类扮演的角色是程序的静态定义 对象扮演的角色是程序运行时的动态结构 类是一组运行时对象的共同性质的静态描述 类的特征(feature)成员: 属性(attribute)和 例程(routine) 每个对象都必定是某个类的一个实例(instance), 而一个类可以创建有许多个对象 实例对象是在程序运行时,根据该对象所属类的属性 动态地构造的 面向对象程序运行时的特征 对象是类的一个实例,是系统动态运行时一个物理 结构的模块,是按需要创建、而不是预先分配的 对象是在类实例化过程中,
您可能关注的文档
- 财政学 谭建立 昝志宏 11新.ppt
- 财政学 谭建立 昝志宏 12新.ppt
- 财政学 唐祥来 康锋莉 01新.ppt
- 财政学 唐祥来 康锋莉 03新.ppt
- 财政学 唐祥来 康锋莉 05新.ppt
- 财政学 唐祥来 康锋莉 06新.ppt
- 财政学 唐祥来 康锋莉 07新.ppt
- 财政学 唐祥来 康锋莉 08新.ppt
- 财政学 唐祥来 康锋莉 09新.ppt
- 财政学 唐祥来 康锋莉 10新.ppt
- 编译原理 王生原 董渊 杨萍 张素琴 slide11新.ppt
- 编译原理 王生原 董渊 杨萍 张素琴 宁夏银川编译原理专题交流新.ppt
- 编译原理——编译程序构造实践教程 张幸儿 戴新宇 101编译程序构造与实践教程第一章新.ppt
- 编译原理——编译程序构造实践教程 张幸儿 戴新宇 201编译程序构造与实践教程第二章新.ppt
- 编译原理——编译程序构造实践教程 张幸儿 戴新宇 202编译程序构造与实践教程第二章新.ppt
- 编译原理——编译程序构造实践教程 张幸儿 戴新宇 301编译程序构造与实践教程第三章新.ppt
- 编译原理——编译程序构造实践教程 张幸儿 戴新宇 401编译程序构造与实践教程第四章新.ppt
- 编译原理——编译程序构造实践教程 张幸儿 戴新宇 601编译程序构造与实践教程第六章新.ppt
- 编译原理——编译程序构造实践教程 张幸儿 戴新宇 602编译程序构造与实践教程第六章新.ppt
- 编译原理——编译程序构造实践教程 张幸儿 戴新宇 701编译程序构造与实践教程第七章新.ppt
最近下载
- 区块链技术及在金融业的应用【论文范文】.doc VIP
- 二 《微写作•抒发情感》(教学课件)-【中职专用】高二语文精讲课堂(高教版2023·职业模块).pptx VIP
- CTF信息安全竞赛理论知识考试题库大全-下(多选、判断题汇总).docx VIP
- 跨文化交际中英文化对比教学课件Unit-2-Clothing-and-dress-codes.pptx VIP
- 武汉-海绵城市建设施工及验收规定.pdf VIP
- 重庆山区烟草种植规模:现状、影响因素与发展策略探究.docx VIP
- 《早睡早起》优质课件.pptx VIP
- T_CACM 1486-2023 广地龙质量控制技术规范.docx VIP
- 3503-J413管道无损检测数量统计表.doc VIP
- 数据安全管理制度.docx VIP
原创力文档


文档评论(0)