社区
Delphi
帖子详情
请教一个interface的问题,关于overload和自定义数据类型
小崔爱读书
2008-03-30 10:45:49
我写了一个interface,之前也写过,都没问题,但今天写的出现问题了;
1 我在接口中定义几个相同名称的方法,就是重载,结果怎么也不行;
2 我定义了一个自定义的数据类型,作为接口的参数,也出现了问题,数据类型很简单就是TByteArray=array of byte。
各位帮忙解决一下。。。或者告诉我无法解决也行。。。
...全文
123
9
打赏
收藏
请教一个interface的问题,关于overload和自定义数据类型
我写了一个interface,之前也写过,都没问题,但今天写的出现问题了; 1 我在接口中定义几个相同名称的方法,就是重载,结果怎么也不行; 2 我定义了一个自定义的数据类型,作为接口的参数,也出现了问题,数据类型很简单就是TByteArray=array of byte。 各位帮忙解决一下。。。或者告诉我无法解决也行。。。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
珍惜生命远离CPP
2008-03-31
打赏
举报
回复
呵呵
奇怪吧
禹爸爸
2008-03-31
打赏
举报
回复
为了防止和Delphi自定义的类型冲突,使用时最好加上单元名,如UnitNmae.MyType
小崔爱读书
2008-03-31
打赏
举报
回复
嗯,也对。。这是一个好习惯。谢谢脑脑
wjbwjb
2008-03-31
打赏
举报
回复
编程自定义的最好加上与系统区别的标志,如TByteArray可以TMyByteArray
小崔爱读书
2008-03-31
打赏
举报
回复
是,没想到我定义的TByteArray居然Borland在sysutils单元里面定义过了,我在接口单元文件中没引用sysUtils,就自定义了这个类型,在类实现的时候是在另外一个单元文件,因为其他的需要就uses了sysUtils,结果造成了接口和实现的TByteArray名字虽然一样,但其实是不同的。。。郁闷死了。。太晚了,明天给分。。。
火龙岛主
2008-03-30
打赏
举报
回复
之前一定是忽略了某些你没有注意到的东西。
小崔爱读书
2008-03-30
打赏
举报
回复
哦,可以了。。。我真晕了。。
小崔爱读书
2008-03-30
打赏
举报
回复
定义了一个byte数组类型
TByteArray=array of Byte;
接口:
IByteArrayStream=interface
procedure Init(buf:Array of byte);
procedure AppendByteArray(buf:TByteArray);
procedure AppendByteArray(buf:TByteArray;len:integer);
end;
类我就是实现这个接口
TByteArrayStream=class(TInterfacedObject,IByteArrayStream)
private
public
{procedure Init(buf:Array of byte);
procedure AppendByteArray(buf:TByteArray);overload;
procedure AppendByteArray(buf:TByteArray;len:integer);overload;
end;
也没什么过分的,我还没写实现的代码呢,就编译不了了。。
珍惜生命远离CPP
2008-03-30
打赏
举报
回复
能否提供一下你出错的代码?
尹成JAVA快速入门
例如,Java显式说明每个基本
数据类型
的大小和它的运算行为(这些
数据类型
由Java语法描述)。 Java环境本身对新的硬件平台和操作系统是可移植的。Java编译程序也用Java编写,而Java运行系统用ANSIC语言编写。 8.高...
请教
一些关于JAVA面试
问题
有很多 谢谢大家帮忙
题 目 java与C#相比,Java的优势在哪里? 1.struts运作过程,hibernate的作用 hibernate中,怎么判断是插入还是更新? 怎么使用javascript进行页面跳转? 怎么使用javascript将
一个
页面的
一个
参数传递到另外
一个
页面? 使用存储过程进行分页,页面使用javascript分页 什么是
自定义
控件?动态如何传数据? 正规表达式只许输入整数 xm
C# 基础概念
1. 面向对象的思想主要包括:继承 多态 封装 ● 封装:用抽象的
数据类型
将数据和基于数据的操作封装在一起,数据被保护在抽象
数据类型
内部。 ● 继承:子类拥有父类的所有数据和操作。 ● 多态:
一个
程序中同名的不同方法共存的情况。 有两种形式的多态– 重载与重写。 2. 什么是装箱和拆箱 装箱(boxing)和拆箱(...
C#基础概念
C#基础概念 1. 面向对象的思想主要包括:继承 多态 封装 ● 封装:用抽象的
数据类型
将数据和基于数据的操作封装在一起,数据被保护在抽象
数据类型
内部。 ● 继承:子类拥有父类的所有数据和操作。 ● 多态:
一个
程序中同名的不同方法共存的情况。 有两种形式的多态– 重载与重写。 2. 什么是装箱和拆箱
设计模式驱动设计
C#基础概念 1. 面向对象的思想主要包括:继承 多态 封装 ● 封装:用抽象的
数据类型
将数据和基于数据的操作封装在一起,数据被保护在抽象
数据类型
内部。 ● 继承:子类拥有父类的所有数据和操作。 ● 多态:
一个
程序中同名的不同方法共存的情况。 有两种形式的多态– 重载与重写。 2. 什么是装箱和拆箱
Delphi
5,386
社区成员
262,729
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章