CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

大哥写的有关对Vcl构造器函数的研究,请大家来讨论。

楼主reallike(爱翔)(学得太多,得休息一下)2003-08-01 23:25:02 在 Delphi / VCL组件开发及应用 提问

下载地址,有些是我写的。嘿嘿。  
   
  http://www.reallysoft.com.cn/op.chm  
   
  请大家提提意见。 问题点数:50、回复次数:16Top

1 楼firetoucher(风焱)回复于 2003-08-01 23:50:34 得分 50

不错,提点意见  
  1   代码罗列太多,却没有解释,尤其是汇编部分,还有函数的输入输出参数没有介绍  
  2   没有指导读者对vmtTable进行分析  
  3   在创建的时候其实create调用的是NewInstance,而NewInstance实际上就是获得一个instancesize大小的内存块,然后调用InitInstance进行初始化,而IntiInstance还引用了虚表中的接口界面表interface,对于包含的接口进行循环的初始化,你这里却没有提  
  4   整个过程中用了对vmtParent的循环,从而实现了create从父类到子类的链式的初始化,你这里也没有提到Top

2 楼reallike(爱翔)(学得太多,得休息一下)回复于 2003-08-01 23:54:57 得分 0

嗬嗬,凤炎老大,我大哥是汇编高手,他的立足点就是,  
   
  最起码,汇编能看得懂。至少里面的汇编我看得懂。  
   
  其他的是很好的建议。谢谢。Top

3 楼firetoucher(风焱)回复于 2003-08-02 00:03:09 得分 0

我补充一点,抛砖引玉,希望大家讨论  
  1   delphi的参数调用方式支持两种寄存器和栈,对于两个(或以下)的参数使用寄存器(eax   edx)传递,多余的通过push用栈传递  
  2   由于你所涉及到的函数都是对象或者类函数/过程,而且参数比较固定而且比较少,所以eax   edx一般一个用来传递实例指针(即self),有必要时另外一个传递类指针,需要索引时用si来保存索引值,这样大家在看那部分汇编和调用时不会晕头转向了  
  Top

4 楼firetoucher(风焱)回复于 2003-08-02 00:03:52 得分 0

好了,睡觉去了....  
  ps   你大哥是谁阿Top

5 楼reallike(爱翔)(学得太多,得休息一下)回复于 2003-08-02 00:09:29 得分 0

没有看文章作者的名字啊。  
   
  如果接触破解界,一定知道dREAMtHEATER,他就是我大哥。  
   
  他已经感觉,使用WIN32SDK开发足够经验了,就学习C++研究一下DELPHI的机制。  
   
  SELF指针基本应该是在EAX寄存器传递的。Top

6 楼test123456789()回复于 2003-08-02 00:18:06 得分 0

1   代码罗列太多,却没有解释,尤其是汇编部分,还有函数的输入输出参数没有介绍  
  看程序流程,而不是让你看细节!  
   
  2   没有指导读者对vmtTable进行分析  
  我觉得我再介绍有点多余,下面的参考文献说得比我清楚,我的这篇文章给中级读者看的,我假设他们都知道什么是VMT  
   
  3   在创建的时候其实create调用的是NewInstance,而NewInstance实际上就是获得一个instancesize大小的内存块,然后调用InitInstance进行初始化,而IntiInstance还引用了虚表中的接口界面表interface,对于包含的接口进行循环的初始化,你这里却没有提  
  说了,你再仔细看,“还引用了虚表中的接口界面表interface,”这个是旁支末节,没有提  
   
  4   整个过程中用了对vmtParent的循环,从而实现了create从父类到子类的链式的初始化,你这里也没有提到  
  这个我可以加进去Top

7 楼reallike(爱翔)(学得太多,得休息一下)回复于 2003-08-02 00:26:50 得分 0

哈,大哥不要发脾气啊。还是老样子。人家风炎老大为初学者着想惯了……Top

8 楼test123456789()回复于 2003-08-02 00:32:21 得分 0

没发发脾气啊。在这里感谢风炎,谢谢你的提示Top

9 楼reallike(爱翔)(学得太多,得休息一下)回复于 2003-08-02 09:47:23 得分 0

>>还有函数的输入输出参数没有介绍  
   
  有关这一点。大哥你应该做到的,这个是我们开发的一个习惯。函数过程前面有一些介绍。Top

10 楼lw549(那个孩子他爹)回复于 2003-08-02 10:24:33 得分 0

看看去Top

11 楼FrameSniper(http://naoku.net/blogs/framesniper/)回复于 2003-08-02 12:32:39 得分 0

哈哈,这个小子,不是走了吗,也回来了~~~~~~~~~~~~~````         ^0^  
   
  怎么感觉你像黑社会的????Top

12 楼reallike(爱翔)(学得太多,得休息一下)回复于 2003-08-02 13:01:13 得分 0

……  
   
  我这是给大哥和我宣传。  
   
  你这个FS,我再临走的时候说好了的,  
   
  大哥写出来文章我转到csdn上来。叫大家指正。Top

13 楼xiaoyuer0851(红旗下的蛋)回复于 2003-08-02 13:13:24 得分 0

学习ing   …………  
  厉害Top

14 楼reallike(爱翔)(学得太多,得休息一下)回复于 2003-08-03 16:57:35 得分 0

怎么没有人看Top

15 楼reallike(爱翔)(学得太多,得休息一下)回复于 2003-08-05 11:14:56 得分 0

结贴。Top

16 楼geyobing(大地精灵)回复于 2003-08-09 09:11:18 得分 0

经典Top

相关问题

  • 构造函数
  • 构造函数
  • 构造函数??
  • 构造函数
  • 函数构造
  • @@@@@@ 构造函数 @@@@@
  • 关于vcl函数构造问题,TForm::CreateParams(Params)的使用
  • WebService构造函数
  • 关于重载对话框类构造函数的问题,各位大哥帮忙!
  • 实际工作中碰到一个构造函数问题,不解,求教于高手大哥们~

关键词

  • 函数
  • 接口
  • 汇编
  • 指针
  • 循环
  • 界面
  • 大哥
  • 初始化
  • 调用
  • 参数

得分解答快速导航

  • 帖主:reallike
  • firetoucher

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo