auto_ptr::reset
Die Memberfunktion wertet den Ausdruck löschen myptr, bei nur aus, wenn der gespeicherte Zeigerwert myptr Ergebnis eines Funktionsaufrufs ändert. Er ersetzt dann den gespeicherten Zeiger durch ptr.
void reset(
Type* _Ptr = 0
);
Parameter
- _Ptr
Der Zeiger angegeben, um die gespeicherten Zeiger myptr zu ersetzen.
Beispiel
// auto_ptr_reset.cpp
// compile with: /EHsc
#include <memory>
#include <iostream>
#include <vector>
using namespace std;
class Int
{
public:
Int( int i )
{
x = i;
cout << "Constructing " << ( void* )this << " Value: " << x << endl;
};
~Int( )
{
cout << "Destructing " << ( void* )this << " Value: " << x << endl;
};
int x;
};
int main( )
{
auto_ptr<Int> pi ( new Int( 5 ) );
pi.reset( new Int( 6 ) );
Int* pi2 = pi.get ( );
Int* pi3 = pi.release ( );
if ( pi2 == pi3 )
cout << "pi2 == pi3" << endl;
delete pi3;
}
Anforderungen
Header: <memory>
Namespace: std