Существует такой код:
#include <iostream>
int main(){
unsigned int* wsk2 = new unsigned int(5);
std::cout << "wsk2: " << wsk2 << " " << *wsk2 << std::endl;
delete wsk2;
wsk2 = new unsigned int;
std::cout << "wsk2: " << wsk2 << " " << *wsk2 << std::endl;
return 0;
}
Результат:
wsk2: 0x928e008 5
wsk2: 0x928e008 0
Я читал, что new
не инициализирует память нулями. Но здесь кажется, что так оно и есть. Как это работает?