pejlemærker i programmeringssprog såsom C + + fungere som henvisninger til dynamisk allokeret hukommelse i systemets hukommelse under afviklingen af programmet . Dog kan denne hukommelse blive glemt i løbet af begivenheder i programmet , hvilket medfører en " hukommelsesfejl ", hvor allokerede hukommelse hurtigt overhaler systemhukommelse. På grund af dette , skal du styre dine pegepinde godt, og altid slette dem. Den " auto_ptr " datatype hjælper tage sig af dette for dig ved at slette den allokerede hukommelse, når den auto_ptr objektet slettes . Du kan nemt implementere dit eget auto_ptr syntaks til at håndtere pointers som du ønsker det . Ting du skal
C + + Compiler
Vis Flere Instruktioner
1
opretter en " auto_ptr "-klassen . Name it " SmartPointer " : Hej
skabelon class SmartPointer {
}
2
Medtag en pointer datatype ind i klassen : < br >
skabelon class SmartPointer {
privat : T * inner_pointer ;}
3
Opret en konstruktør til Smart Pointer klasse, som tildeler en henvisning til pointer : Hej
skabelon class SmartPointer {
public: SmartPointer (T reference) ,
privat : T * inner_pointer ;} ; < br >
skabelon SmartPointer :: SmartPoint (T reference) { inner_pointer = henvisningen ;}
4 Opret en destructor for klassen , hvilket vil slette markøren indhold fra hukommelsen , ligesom de " auto_ptr " type : Hej
skabelon class SmartPointer {
public: SmartPointer (T reference) , ~ SmartPointer ();
private : T * inner_pointer ;} ;
skabelon SmartPointer :: SmartPoint (T reference) { inner_pointer = henvisningen ;}
skabelon SmartPointer :: ~ SmartPointer () { delete inner_pointer ;}