On 05/22/2018 01:02 PM, Liu Hao wrote:
> 在 2018/5/22 17:46, Jacek Caban 写道:
>> +#ifndef WIDL_EXPLICIT_AGGREGATE_RETURNS
>>      STDMETHOD_(D2D1_SIZE_F, GetSize)(void) const PURE;
>> +#else
>> +    virtual D2D1_SIZE_F* STDMETHODCALLTYPE GetSize(D2D1_SIZE_F*) = 0;
>> +    D2D1_SIZE_F STDMETHODCALLTYPE GetSize() {
>
> You missed the `const` qualifier, which applies to both declarations
> in the `#else` clause.

Good catch, I will send a fix.


>
>> +#ifndef WIDL_EXPLICIT_AGGREGATE_RETURNS
>>      STDMETHOD_(D2D1_POINT_2F, GetCenter)(void) const PURE;
>> +#else
>> +    virtual D2D1_POINT_2F* STDMETHODCALLTYPE GetCenter(
>> +        D2D1_POINT_2F *__ret) = 0;
>> +    D2D1_POINT_2F STDMETHODCALLTYPE GetCenter(
>> +        )
>
> There should be no line breaks in these declarations.

ok...

> BTW, what is the benefit of replacing `PURE` with `= 0` ? The only
> difference I know at the moment is that the former is a macro that
> expands to nothing hence can be used in a C source file, while the
> latter is of course a C++ thing.

You got it right, it's exactly the same when used in C++-only code.


Thanks,
Jacek



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to