DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: maxding
今日帖子: 36
在线用户: 13
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 l_wming (L_Wming) ★☆☆☆☆ -
普通会员
2024/5/27 15:26:19
标题:
百度了一下:delphi 用关键字做对象属性 浏览:562
加入我的收藏
楼主: delphi 用关键字做对象属性
在Delphi中,你可以使用关键字作为对象的属性名,但需要在属性名前后使用双引号("")来消除歧义。例如,如果你想使用class作为属性名,你可以这样声明并使用:

type
  TMyObject = class
  private
    f"class": string; // 使用关键字作为属性名,加上双引号
  public
    constructor Create;
    property "class": string read f"class" write f"class";
  end;
 
constructor TMyObject.Create;
begin
  inherited Create;
  f"class" := 'MyClass'; // 使用属性时加上双引号
end;
在上面的例子中,"class"属性被用作对象的私有字段,并且在构造函数中被初始化。注意在实际代码中访问这个属性时需要加上双引号。

使用这种方式,你可以避免关键字与Delphi语法的冲突,并能够使用常见的关键字作为对象的属性名。

提示:AI自动生成,仅供参考



其他语言可以这样,delphi有什么好方法没
----------------------------------------------
-
作者:
男 bighawk (Hawk) ★☆☆☆☆ -
盒子活跃会员
2024/5/27 15:52:29
1楼: 其他都看懂了,就最后一句实在看不懂了
----------------------------------------------
-
作者:
男 bahamut8348 (leonna) ★☆☆☆☆ -
普通会员
2024/5/27 17:23:22
2楼: 用前缀&
比如:&class.
----------------------------------------------
--
作者:
男 cnpack (CnPack) ★☆☆☆☆ -
普通会员
2024/5/27 18:48:07
3楼: AI瞎扯的。
楼上巴哈说得对,&符号用于给它后面的标识符转义成普通标识符,无论它是不是关键字。
----------------------------------------------
欢迎使用CnPack IDE Wizards
http://www.cnpack.org/
作者:
男 ksrsoft (cb168) ★☆☆☆☆ -
普通会员
2024/5/28 19:25:27
4楼: & 就是用它
----------------------------------------------
-
作者:
男 think1994 (小白) ▲△△△△ -
普通会员
2024/5/29 8:32:11
5楼: 我没想明白,为啥要用关键字做变量名或者属性名呢?
----------------------------------------------
-
作者:
男 tony2u (tony2u) ★☆☆☆☆ -
普通会员
2024/5/29 8:35:04
6楼: 楼上,有时候实在想不出别的单词,比如“种类”:type和class都是关键词
----------------------------------------------
-
作者:
男 383530895 (兵临城下) ★☆☆☆☆ -
普通会员
2024/5/29 13:15:25
7楼: kind of
----------------------------------------------
XXXXXXXXXXXXX
作者:
男 xlonger (xlonger) ★☆☆☆☆ -
普通会员
2024/5/30 9:10:06
8楼: type; kind; variety; class
category; Type; species

随便加点字符,就能避免。
----------------------------------------------
我打的是酱油,而不是别的什么油。
我灌的是口水,而不是别的什么水。
我聊的折腾不是那个不折腾的折腾。
我说的阿娇不是那个邓玉娇的阿娇。
3个代表,6个为什么,9个肠胃炎。
D性强的领导干部都不喜欢热比娅。
我特别要讲的是,屁民网黄色论坛是我经常上网必选的 网站之一
作者:
男 ksrsoft (cb168) ★☆☆☆☆ -
普通会员
2024/5/30 9:26:54
9楼: 我遇到的是做接口,对方已经用type,为了给对方接,只能用type,对方用的不是delphi
----------------------------------------------
-
作者:
男 think1994 (小白) ▲△△△△ -
普通会员
2024/5/31 11:25:42
10楼: 9楼:在不暴露公司机密的情况下,能不能详细说说接口这个事情,接口理解起来应该是数据结构要一致,不会是变量类型名也要一致吧?
----------------------------------------------
-
作者:
男 bighawk (Hawk) ★☆☆☆☆ -
盒子活跃会员
2024/5/31 11:43:09
11楼: DLL 的导出函数,Delphi 中可以换个名字,只要申明的函数名与 DLL 的导出名一致即可。
IUnknown 也是一样,重新申明数据结构的时候可以随便写名字,只要函数顺序和函数参数对的上即可。
IDispatch 就稍微麻烦一些,不能使用 Delphi 提供的 Variant 进行调用了,要自己使用 IDispatch 的接口来进行调用。
其他还有啥语言级别的接口?
----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行62.5毫秒 RSS