社区
语言基础/算法/系统设计
帖子详情
把一个Integer类型的变量转换为TObject之后,用不用释放,怎么释放?
shixueli
2004-09-23 02:57:05
如题
...全文
188
15
打赏
收藏
把一个Integer类型的变量转换为TObject之后,用不用释放,怎么释放?
如题
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
shixueli
2004-10-05
打赏
举报
回复
分少,大家见谅
ikumei
2004-09-24
打赏
举报
回复
楼主这个"把INTEGER类型转成TOBJECT"这个说法不对
实际只是把integer类型转成tobject类型的指针,32位整数转32位整数当然是可以的
如果楼主只是想保存这个整数到只接受tobject类型参数的对象里 将integer转成tobject类型的指针是可以的
用的时候再转回来还是原来的数字,不用释放,那个对象也不过是存放一个指针而已,事实上等于可以存放任何东西。整数可以直接存放,其他的东西可以将它们的指针存放进去
ikumei
2004-09-24
打赏
举报
回复
比如:
A:Tobject;
B:integer;
.......
A:=Tobject.create;
....
b:=integer(a);
.....
以后
你可以A.free,也可以Tobject(B).free;但只能释放一次。
--------------------------------------------------
靠,原来说的这种转换阿
这样做有意义吗?a和b实际在内存中都是32位整数,说穿了就是指针,a转成b 不过是个内存地址的数字,这还可以用来显示
但b转成a呢,在这里毫无意义
我还以为将整数转成tobject以后仍然是个整数呢
CareYouOnly
2004-09-24
打赏
举报
回复
"是这样的,我想把一个Integer值保存到ComboBox里面,但是这个控件的AddObject方法只接受TObject对象,于是我就把Integer转换为TObject了。"
行的,用完之后步用释放!
jorge
2004-09-24
打赏
举报
回复
TObject本质上就是个指向对象实例的指针,指针么,和整数当然是可以来回转换的,就是当Integer穿着TObject的马甲的时候千万别访问它的成员,因为那其实是个不一定指向哪的指针,根本没有给它分配内存,后果……
这回你说那个TObject用释放么?
fireinthehole
2004-09-23
打赏
举报
回复
是个问题,关注
halfdream
2004-09-23
打赏
举报
回复
这样用没有多大问题的...
比如:
var
a:TObject;
b:integer;
begin
...
其中a本身,也仅是四字节的整型,只是它将会用于存地址而已.
强制转换后,把它当成整型数用没有什么不行的.
fj218
2004-09-23
打赏
举报
回复
比如:
A:Tobject;
B:integer;
.......
A:=Tobject.create;
....
b:=integer(a);
.....
以后
你可以A.free,也可以Tobject(B).free;但只能释放一次。
ehom
2004-09-23
打赏
举报
回复
这里只是记录一个指针,释放问题与它无关,指针传递自然没理由报错~~~但有另一个严重问题,对象是存在堆上的,VCL对象不手动释放,就一直存在,所以可以这里可以这么用.而Integer呢?我相信你不是给它动态分配在堆上吧?那它就在栈上,栈的概念有吧?下一次指针指向的Integer类型数据就不是同一个,上次那个已经释放了,所以不要这么做.
shixueli
2004-09-23
打赏
举报
回复
不是阿,我用的是D7,编译能通过,不是提示 不是安全的转换。
ikumei
2004-09-23
打赏
举报
回复
楼主是不是用的delphi.net???
来错分区了???
据我的了解 在delphi.net以前的版本中好像不存在 能把integer 转换为 tobject这种事
首先integer就不是一个类——这和java 以及.net不同
如果楼主说的是.net 里的 ,Integer转换为TObject当然不用自己释放,java也是如此
ehom
2004-09-23
打赏
举报
回复
类型转换要求A是B的派生类才行~~~
shixueli
2004-09-23
打赏
举报
回复
是这样的,我想把一个Integer值保存到ComboBox里面,但是这个控件的AddObject方法只接受TObject对象,于是我就把Integer转换为TObject了。
halfdream
2004-09-23
打赏
举报
回复
不用.
不过还是想问问楼主所说的把INTEGER类型转成TOBJECT是什么意思..嘿嘿
tugang
2004-09-23
打赏
举报
回复
关注中……
类型
不兼容: 无法将java.lang.
Object
转换
为T - Java
总结一下,当我们在Java中尝试将
一个
Object
类型
的对象
转换
为泛型T
类型
时,可能会遇到
类型
不兼容的错误。这是因为在泛型中,
类型
参数在编译时会被擦除为其上界
类型
,导致
Object
类型
无法隐式
转换
为泛型
类型
。所以,当...
关于Redis-存Long取
Integer
类型
转换
错误的问题
这里统一将结果反序列化为
Object
类型
,所以这里便是问题的根源所在,对于数值
类型
,取出后统一转为
Object
,导致泛型
类型
丢失,数值自动转为了
Integer
类型
也就不奇怪了。2.String对象的反序列化问题,直接在Redis...
java
变量
和对象
类型
转换
_Java中数据
类型
转换
&基本
类型
变量
和对象型
变量
1.Java的数据
类型
分为三大类布尔型,...数据
类型
转换
Java中数据
类型
转换
分为三种,简单数据
类型
转换
,字符串与其他
类型
转换
,其他实用数据
类型
转换
(1)简单数据
类型
转换
在Java中,整型,实型,字符型被视为简单数据...
java
integer
long
转换
_java - 将
Integer
转换
为Long
java - 将
Integer
转换
为Long我需要使用反射来获取字段的值。 碰巧我并不总是确定该字段的数据
类型
是什么。 为此,为了避免一些代码重复,我创建了以下方法:@SuppressWarnings("unchecked")private static T ...
java
类型
强制
转换
_java中常用的一些
类型
强制
转换
本文将对常用的
转换
方法进行
一个
总结。常用的方法有
Object
.toString(),(String)要
转换
的对象,String.valueOf(
Object
)等。下面对这些方法一一进行分析。方法1:采用
Object
.toString()方法请看下面的例子:1
Object
...
语言基础/算法/系统设计
16,748
社区成员
33,247
社区内容
发帖
与我相关
我的任务
语言基础/算法/系统设计
Delphi 语言基础/算法/系统设计
复制链接
扫一扫
分享
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章