C dilinde bir Python modülü yazıyorum Yerleşik Python istisnaları tarafından tanımlanamayan hataları bildirmem gerekiyor. Bu yüzden kendi türlerimden istisnalar atmak istiyorum. Sorun, Python ilkesinin BaseException sınıfındaki tüm istisnaları türetmektir. Türetilmiş bir nesneyi nasıl oluşturacağımı biliyorum (tp_base belleğine atama), ancak BaseException türü nesnesine nasıl başvuru yapacağımı bilmiyorum. PyExc_BaseException, bir nesneyi değil, bir nesneyi temsil eden PyObject öğesine bir başvurudır.C uzantısında özel bir Python özel durum türü nasıl oluşturulur?
C kodundan özel Python özel durumlarını nasıl atabilirim?
A (yeni stil) sınıfı ve bir yazım nesnesi Python'da aynı şeydir, bu yüzden sorununuzu anlamıyorum. –
Sven, PyExc_RuntimeError'u kullandım ve kendi Özel Durumum için temel tür olarak kullandım. Şimdiye kadar kötü bir şey olmadı (uzun vadeden sonra segfaultların başka bir şeyden kaynaklandığına inanıyorum). Soruma cevap verir misin, cevabınızı kabul edebilir miyim? – Basilevs