佚名通过本文主要向大家介绍了atl,atl71.dll,atl100.dll下载,atl71.dll修复,穿越火线atl71.dll等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 求助: ATL中Custom接口函数的顺序改变了,是否影响客户端的调用,内详
描述:
描述:
假设ATL(工程名为Test1)的Custom接口原本定义了两个函数,例如Fun1(),Fun2(),在idl文件中的定义如下:
interface IFun : IUnknown
{
[helpstring("method Fun1")] HRESULT Fun1(...);
[helpstring("method Fun2")] HRESULT Fun2(...);
};
在客户端通过智能指针调用如下: spFun->Fun1(); spFun->Fun2();
现在如果修改ATL的Custom接口,将Fun1和Fun2在idl文件中的位置互调,如下:
interface IFun : IUnknown
{
[helpstring("method Fun2")] HRESULT Fun2(...);
[helpstring("method Fun1")] HRESULT Fun1(...);
};
然后重新生成新的Test1.dll,将其替换客户端原Test1.dll。(客户端不做任何变化)
那么请问,这时客户端再次调用 spFun->Fun1()时,调用的是ATL接口中的Fun1()还是Fun2()呢?
小弟现在手边没有调试环境,特来发帖求助。 欢迎讨论,最好能详细说明 :)