[intobject.c]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | |
我说一开始我怎么没看懂 q->ob_type = (struct _typeobject *)(q-1) 这句话的作用呢,原来是个trick,未分配的PyIntObject的ob_type保存的是前一个PyIntObject的指针,而不是struct声明中的类型对象指针。好歹加个注释说明下啊 = =
[intobject.c]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | |
我说一开始我怎么没看懂 q->ob_type = (struct _typeobject *)(q-1) 这句话的作用呢,原来是个trick,未分配的PyIntObject的ob_type保存的是前一个PyIntObject的指针,而不是struct声明中的类型对象指针。好歹加个注释说明下啊 = =