Pimpl copying

Peter Kümmel syntheticpp at gmx.net
Fri Jul 14 10:39:15 BST 2006


Lubos Lunak wrote:
> On Friday 14 July 2006 10:33, André Wöbbeking wrote:
>> On Thursday 13 July 2006 23:05, Peter Kümmel wrote:
>>> While debugging KTempDirTest on windows I've found that this patch
>>>
>>> Index: ktempdirtest.cpp
>>> ===================================================================
>>> --- ktempdirtest.cpp    (revision 561767)
>>> +++ ktempdirtest.cpp    (working copy)
>>> @@ -26,7 +26,7 @@
>>>
>>>  void KTempDirTest::testBasic()
>>>  {
>>> -       KTempDir dir = KTempDir("test");
>> normal ctor and then copy ctor
> 
>  No. It's just syntactic sugar functionally completely equivalent to the case 
> below with just normal ctor. If any compiler uses copy ctor here it's broken.
> 

Are you sure it is defined by the standard and not only the way
gcc handle this stuff?


>>> +       KTempDir dir("test");
>> normal ctor
>>
>>> avoids a crash caused by dereferencing a uninitialized variable.
>>> (wonder why it works with gcc)
> 
>  I guess because gcc is not broken in this case.

GCC not using the copy constructor is an explanation.

> 
>>> Or is there already a Qt way to handle this?
>> Q_DISABLE_COPY
> 
>  Right.
> 





More information about the kde-core-devel mailing list