0

mabby 这是一个愚蠢的问题)我有一个小误解:

"newobj" 使 CLR 能够: 1) 计算对象需要多少内存

2)如果堆有足够的内存 - 调用构造函数,检索内存中新对象到主代码的链接(地址是指向下一个对象的指针的最后位置)

3) 之前!检索引用将指针移动到下一个对象

这是一个例子: Car myCar = new Car;

所以,如果我理解的话,编译器会将“指向下一个对象的链接”写入 myCar ?如果我们需要编译器将“指向我们对象的链接”写入我的车..

如果可以,请描述它是如何工作的

4

1 回答 1

2
Car myCar = new Car;

调用类型的构造函数,Car所有父类型的调用链从最深的类型开始。

分配空间,获得指向该内存位置的指针和分配给该内存的地址myCar

基本步骤

于 2012-09-18T21:26:01.707 回答