问题描述
/* The ASN is an absolute slot number over 5 bytes. */
struct tsch_asn_t {
uint32_t ls4b; /* least significant 4 bytes */
uint8_t ms1b; /* most significant 1 byte */
};
我以为我可以通过第二个打印功能获得None,但是两次打印都得到了相同的对象地址。为什么不能使用类方法修改对象?
解决方法
在类方法中,self
是成为局部范围一部分的参数。分配给任何本地范围变量只会更改本地范围。如果要分配给self
这样的属性,例如
self.foo = “Bar”
然后,您将修改对象本身。
此外,a
在调用(全局)作用域中引用了该对象,并且该引用将防止该对象的破坏。
换一种说法,self
和a
都引用同一个对象,而分配self=None
仅删除其中一个引用。