描述:
如题,象下面我该用那个啊?一个是属性一个是方法,都可以实现一样的功能
方法实现:
[id(4), helpstring("method GetOwner")] HRESULT GetOwner(IDispatch * pVal);
属性实现:
[propget, id(5), helpstring("property Owner")] HRESULT Owner(IDispatch * pVal);
解决方案1:
在OCX控件开发的时候,添加属性就会给你加上两个函数,GetXXX(). SetXXX();来方便使用者来赋值和取值。函数的功能就更强些,当然可以完在属性的功能,一般都会有一个独立的功能,而不只改变某个变量的值
解决方案2: 差不多,
先有的方法,然后人们觉得用着不太方便 就弄了个属性,一个属性其实就是两个方法。
属性当然都可以用方法来实现,不过不直观了。
解决方案4:这两个随你用哪个都行,属性的作用只是方便在一些客户端(如VB)调用。
解决方案5: 这没有严格的限定
但一般来说,一个属性对应类的一个数据成员。在这个属性里,一般只是验证,取值,赋值的功能。在用属性向导时会问你这个属性属于什么类型时就是指这个属性对应的数据成员是什么数据类型。
方法么可能不对数据成员操作,也可能对一个或多个进行操作,一般都是为了完成某一个功能。而不像属性和方法那样,目标很明确就是取值,赋值。
呵呵,能实现就行了,差不多的,