STDMETHOD 与STDMETHODIMP区别

来源:互联网 发布:网络舆论的负面影响 编辑:程序博客网 时间:2024/05/21 22:28

#define   STDMETHOD(method)               virtual   HRESULT   STDMETHODCALLTYPE   method  
  #define   STDMETHODCALLTYPE               __stdcall  
  这样当写一个函数STDMETHOD(op1(int   i))      
  展开后成为:     virtual   HRESULT   __stdcall   op1(int   i);  
   
  这样就这义了一个虚函数op1。当然了这个虚函数只能放在接口定义中了。  
  所以STDMETHOD宏是用于定义接口用的。放在头文件中用。  
   
  当要在CPP中实现这个方法时就用到另一个宏STDMETHOD  
  #define   STDMETHODIMP                         HRESULT   STDMETHODCALLTYPE  
  #define   STDMETHODCALLTYPE               __stdcall  
  这样CPP文件中,STDMETHODIMP(op1(int   i))就展开为:  
   
  HRESULT   __stdcall   op1(int   i);  
   
  其实用这些宏只不过为了省了一些打字的时间而已。

原创粉丝点击