← Back to team overview

dolfin team mailing list archive

Re: Use of explicit

 

I think the memory handling issues need to be ironed out before it is
safe to do this...

-- 
Martin


2008/6/26 Andy Ray Terrel <aterrel@xxxxxxxxxxxx>:
> You probably don't need the explicit keyword for copy constructors as
> done in Functions.h , PetscMatrix.h, uBlasMatrix.h, EpetraMatrix.h.
> This has the added effect of not being able to pass functions as
> arguments (perhaps that is bad but anyhow).  Having just pulled this
> seemed to make my code a bit unhappy.
>
> On Tue, Apr 29, 2008 at 9:22 AM, Martin Sandve Alnæs <martinal@xxxxxxxxx> wrote:
>> Without it, the constructor may be automatically transformed to an
>> operator= for the same type. Take for example this code:
>>
>> class A
>> {
>> public:
>>  A(int N) { x = new real[N]; }
>>  ~A() { delete [] x; }
>> };
>>
>> A a(100);
>> a = 200; // legal without explicit above
>>
>> which will lead to disaster.
>>
>> --
>> Martin
>>
>>
>> 2008/4/29  <kent-and@xxxxxxxxx>:
>>> > All constructors with a single argument.
>>>  >
>>>  > --
>>>  > Martin
>>>  >
>>>  >
>>>
>>>  Why ? What does it mean ?
>>>
>>>  Kent
>>>
>>>
>> _______________________________________________
>> DOLFIN-dev mailing list
>> DOLFIN-dev@xxxxxxxxxx
>> http://www.fenics.org/mailman/listinfo/dolfin-dev
>>
> _______________________________________________
> DOLFIN-dev mailing list
> DOLFIN-dev@xxxxxxxxxx
> http://www.fenics.org/mailman/listinfo/dolfin-dev
>


References