Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Werbeanzeige
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
#include <iostream> void GetInt (unsigned int *pI) { unsigned int *P = NULL; P = new unsigned int; *P = 1; (pI) = (P); } int main () { unsigned int *i = NULL; GetInt (i); std::cout << *i << std::endl; // <-- crash std::cin.get (); delete i; return 0; } |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
#include <iostream> void GetInt (unsigned int **pI) { unsigned int *P = NULL; P = new unsigned int; *P = 1; (*pI) = (P); } int main () { unsigned int *i = NULL; GetInt (&i); std::cout << *i << std::endl; std::cin.get (); delete i; return 0; } |
C-/C++-Quelltext |
|
1 2 3 |
int **pI; *pI; //<-- |
C-/C++-Quelltext |
|
1 2 3 |
int *pI; pI; //<-- |
C-/C++-Quelltext |
|
1 |
std::auto_ptr<int> ptr_int(new int(0)); |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
template<typename _Type> void get_pointer(_Type*& ptr) { ptr = new _Type(); // init pointer with default-value } template<typename _Type> void reset_pointer(_Type*& ptr) { delete ptr; // delete pointer ptr = NULL; // if developer use pointer again there will be an error (like null-pointer exception) } // example 001 #include <iostream> // std::cout, std::cin int main () { // get memory unsigned int* ptr_i(NULL); get_pointer(ptr_i); // show value of pointer std::cout << (*ptr_i) << std::endl; // free memory reset_pointer(ptr_i); std::cin.get (); } |
Werbeanzeige