起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 146|回复: 2

[问题]方法"Assign"重复实现**

[复制链接]
发表于 2009-6-4 09:08:31 | 显示全部楼层 |阅读模式
现要改造一个基类,使之可以持久化:
  TSample = class(TPersistent)  //原自TObject继承
  public
    procedure Assign(Source: TPersistent); overload; override;  //改造增加
    procedure Assign(Source: TSample); overload; virtual;
  end;  

编译报如题错误?
同样的代码如果放在Delphi6下就是好的,可有思路?不胜感激!
    procedure Assign(Source: TSample); virtual;
已被众派生类继承且到处被引用,不宜改变。
回复

使用道具 举报

发表于 2009-6-4 09:26:29 | 显示全部楼层
如果dephi下编译能过,那么Studio中编译也能过的,楼主是不是自己写错代码了!特别是实现部分是不是函数的签名儿有问题!一般只有在两个同名函数签名也相同的情况下才会报方法重复实现的编译异常!
楼主的代码中的实现部分是否写成了
   procedure TSample.Assign(Source: TPersistent);
   procedure TSample.Assign(Source: TPersistent);
或:
   procedure TSample.Assign(Source: TSample);
      procedure TSample.Assign(Source: TSample);
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-6-4 09:55:23 | 显示全部楼层
奇怪了,我确实没写错,检查过无数遍了才上来发的贴,不过经你提醒,我新建了一个测试单元,同样的写法又确实能编译通过,怪哉!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-20 14:40 , Processed in 0.044670 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表