在python中,使用ctype是合法的:
from ctypes import *
class POINT(Structure):
_fields_ = [("x", c_int),
("y", c_int)]
p = POINT(10,20)
sum = p.x + p.y但这是怎么回事?我是说p.x怎么才是完全合法的?这是什么把戏?谢谢。
发布于 2016-08-03 08:13:17
当初始化子类Structure类的实例时,它读取_fields_并根据该列表中的字段名关联属性。
这都是用C语言完成的,因此,如果您想确切地了解它是如何完成的,您需要使用源代码,特别是Struct_type的定义和_init_pos_args函数ctypes.c#L4021
https://stackoverflow.com/questions/38737497
复制相似问题