【まず1嫁】くだすれPython(超初心者用) その60 (295レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

10: デフォルトの名無しさん [] 2024/09/11(水) 19:58:44.82 ID:Blw77c4i(1) AAS
ctypesの型を派生して新しい型を作りたいです。
普通に A() の形でインスタンスを作ると __new__や__init__が呼ばれるのですが
A.from_buffer()でインスタンスを作ると__new__も__init__も呼ばれません。
インスタンスが出来たときに初期化処理を走らせたいのですが
あらゆる場合に処理を走らせるにはどこに書けば良いのでしょう?

class A(ctypes.Structure):
  def __new__(cls):
    print("__new__")
    return super().__new__(cls)
  def __init__(self):
    print("__init__")

a1 = A()   # __new__も__init__も呼ばれる
a2 = A.from_buffer(b'\x00' * 100) # __new__も__init__も呼ばれない
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.833s*