Это основной вопрос, на который я не могу найти никакого ответа.
При следующем коде произойдет утечка памяти:
int main(){
A* a = new A();
// 1
}
//2
Допустим, что получил значение 1000. То есть адрес 1000 в куче теперь берется объектом А.На 1, а == 1000 и на 2 а выходит за рамки.Но некоторая информация отсутствует.
В реальной жизни адрес 1000 - это адрес байта в памяти.Этот байт не имеет информации о том, что он хранит ценную информацию.
Мои вопросы:
кто хранит эту информацию?
как хранится эта информация?
какой компонент «знает», откуда и куда указывает a точекк?Как компьютер может знать, что указывает на размер (A) байт?
Спасибо!