मैं Cython साथ एक समस्या है 0.17.1प्रचार सी ++ अपवाद cython के लिए - अजगर अपवाद
मेरे समारोह एक std::runtime_error
फेंकता है तो एक फ़ाइल मौजूद नहीं है, मैं करने के लिए कुछ तरीके से इस अपवाद का प्रचार करना चाहते हैं मेरे साइथन कोड।
void loadFile(const string &filename)
{
// some code, if filename doesn't exists
throw std::runtime_error(std::string("File doesn't exists"));
}
और समारोह के सही रैपिंग के बाद Cython से:
try:
loadFile(myfilename)
except RuntimeError:
print "Can't load file"
लेकिन यह अपवाद हमेशा नजरअंदाज कर दिया है, मैं C++ अजगर से अपवाद कैसे पकड़ कर सकते हैं?
आप को छोड़कर का उपयोग करते थे [ '': http://docs.cython.org/src/userguide/wrapping_CPlusPlus.html#exceptions
मूल रूप से, आप निम्नलिखित की तरह कुछ करने की ज़रूरत है ] (http://docs.cython.org/src/userguide/wrapping_CPlusPlus.html#exceptions) आपके 'cdef' में)? – user4815162342
हाँ, शायद मुझे कुछ और कोड पोस्ट करना चाहिए ... – linello
क्या आप पूरी तरह से सुनिश्चित हैं कि सी ++ पक्ष पर अपवाद फेंक दिया गया है? आप 'रिटाइम एरर' को छोड़कर 'अपवाद को छोड़कर, ई' और प्रिंट' ई 'के साथ' कुछ अन्य पायथन अपवाद उठाए जाने के लिए 'को बदलने का भी प्रयास कर सकते हैं। – user4815162342