2010-10-06 17 views
9

साइथन से सी ++ मानक std :: स्ट्रिंग का उपयोग करने का सबसे अच्छा तरीका क्या है? आखिरी साइथन वितरण को वैसे भी आसान बनाना चाहिए, लेकिन मुझे आश्चर्य है कि std :: vector के लिए रैपर क्यों हैं और std :: string के लिए नहीं ...साइथन सी ++ और std :: स्ट्रिंग

उत्तर

11

Cython 0.16 includes wrappers for std::string, जिसके साथ आयात किया जा सकता:

from libcpp.string cimport string 
+1

यह बहुत बेहतर लगता है। – dsign

+0

लगता है कि ओएसएक्स पर साइथन 0.16 के साथ मेरी घोषणा लिनक्स पर साइथन 0.17 के अनुरूप नहीं है, ओएसएक्स के साथ मुझे 'पायथन ऑब्जेक्ट' में 'स्ट्रिंग कन्वर्ट' नहीं मिल रहा है – linello

8

ओह, यह प्रश्न कुछ दिनों के लिए यहां लटका रहा है। अंत में मैंने यह किया:

cdef extern from "string" namespace "std": 
    cdef cppclass string: 
     char* c_str() 

जो एक पूर्ण समाधान नहीं है लेकिन फिर भी यह बात करता है।

+0

मैं स्ट्रिंग (चार *) भी जोड़ना होगा। यह आपको पाइथन तारों से और आगे आगे और पीछे देता है। – meawoppl

संबंधित मुद्दे