怎样判断两个ihtmlelement指针是相同的指针?

biganchor 2012-08-19 10:51:09
function SameDispatch(one, two: IDispatch): Boolean;
var
oi: IObjectIdentity;
begin
Result := (one as IUnKnown) = (two as IUnknown);
if not Result then
begin
oi := one as IUnKnown as IObjectIdentity;
Result := oi.IsEqualObject(two as IUnKnown) = S_OK;
end;
end;

使用以上例程在一些情况下并不凑效,想知道这个问题的最终答案是?
...全文
119 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
biganchor 2012-08-20
  • 打赏
  • 举报
回复
咋没人呢?自己顶!!
biganchor 2012-08-20
  • 打赏
  • 举报
回复
这跟直接if one = two then有什么区别呢?[Quote=引用 1 楼 的回复:]

你那个比较的是地址可能 one,two虽然指向同一个指针,但是他俩本身并不在同一个地方,所以去得one和two的地址,然后取该地址处的值(整形),比较这个值
[/Quote]
bdmh 2012-08-20
  • 打赏
  • 举报
回复
你那个比较的是地址可能 one,two虽然指向同一个指针,但是他俩本身并不在同一个地方,所以去得one和two的地址,然后取该地址处的值(整形),比较这个值

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧