From: Fernando L. <fer...@gm...> - 2010-04-11 00:44:05
|
A few minutes after this post, I've realized that Block::init_type() must be called in module initialization, and not in Gain::init_type(), but the same thing happens. Fernando ---------- Forwarded message ---------- From: Fernando Libonati <fer...@gm...> Date: 2010/4/10 Subject: Derived class getattro To: Discuss PyCXX use and improvement <cxx...@li...> In cxx_extensions.cxx .... In a derived class this always call the getattro of the base class, and never get the derived class attributes visible. How can I access a derived class attro? I've attached the test system, base.h and base.cxx. When compiled, it is possible to create a g = base.Gain("b",1,None,2.43) object, and access name,number and parent attributes, but doesn't reach the gain attribute. Python says """Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'Gain' object has no attribute 'gain' """ It would be possible to call first the derived class method, and inside it call the base class method (under the user responsibility)? -- Fernando Libonati fernando.libonati at gmail.com -- Fernando Libonati fernando.libonati at gmail.com |