Hoe beperk ek dinamiese toekenning van 'n voorwerp in C++?
Hoe beperk ek dinamiese toekenning van 'n voorwerp in C++?

Video: Hoe beperk ek dinamiese toekenning van 'n voorwerp in C++?

Video: Hoe beperk ek dinamiese toekenning van 'n voorwerp in C++?
Video: Tim Maudlin Λ Palmer: Fractal Geometry, Non-locality, Bell 2024, Mei
Anonim

Stapel gebaseer voorwerpe word implisiet bestuur deur C++ samesteller. Hulle word vernietig wanneer hulle buite omvang gaan en dinamies toegewysde voorwerpe moet met die hand vrygestel word, anders gebruik die verwyderingsoperateur geheue lekkasie plaasvind. C++ ondersteun nie outomatiese vullisversameling-benadering wat deur tale soos Java en C# gebruik word nie.

As ek dit in die oog hou, hoe beperk ek die dinamiese toekenning van 'n voorwerp in C++?

Stapel gebaseer voorwerpe word implisiet bestuur deur C++ samesteller. Hulle word vernietig wanneer hulle buite omvang gaan en dinamies toegewysde voorwerpe moet met die hand vrygestel word, anders gebruik die verwyderingsoperateur geheue lekkasie plaasvind. C++ ondersteun nie outomatiese vullisversameling-benadering wat deur tale soos Java en C# gebruik word nie.

Kan ons ook geheue vir die voorwerpe dinamies in CPP toewys? Dinamiese geheue toewysing vir Voorwerpe Ons kan ook voorwerpe dinamies toeken . Soos ons weet dat Constructor 'n lidfunksie van 'n klas is wat geroep word wanneer 'n nuwe voorwerp is van daardie klas geskep. Destructor is ook 'n klaslidfunksie wat genoem word wanneer die voorwerp gaan buite omvang.

Mense vra ook, hoe maak jy 'n C++ klas waarvan die voorwerpe net dinamies toegewys kan word?

  1. Kan nie gedoen word nie. Die enigste ding wat jy kan doen is om die konstruktor privaat te maak en 'n statiese fabriek te hê wat 'n nuwe instansie van die klas bou. –
  2. Die skep van so 'n klas is beslis 'n probleem.
  3. Dit is 'n baie vreemde vereiste.

Hoekom moet ons dinamiese inisialisering van voorwerpe doen?

Die Dinamiese inisialisering van voorwerpe beteken om inisialiseer die data lede van die klas terwyl die skep van die voorwerp . Wanneer ons wil hê om aanvanklike of verstekwaardes aan die datalede te verskaf terwyl dit geskep word voorwerp - ons benodig te gebruik dinamiese inisialisering van voorwerpe.