मैं VS2008अपवाद वर्ग * निर्माता
पर निम्न कोड में आएif (!CreateProcess(NULL,
const_cast<LPWSTR>(ss.str().c_str()),
NULL,
NULL,
FALSE,
CREATE_NO_WINDOW|NORMAL_PRIORITY_CLASS,
NULL,
NULL,
&si,
&pi))
{
throw std::exception("Unable to format Device");
}
अब मैं MinGW जीसीसी के लिए कोड पोर्टिंग रहा हूँ और मैं त्रुटि
error: no matching function for call to 'std::exception::exception(const char [23])'
मुद्दा मैं जांच प्राप्त
ध्यान दिया गया है कि विजुअल स्टूडियो में एक फ़ाइल अपवाद है जिसमें अपवाद वर्ग है और char * में लेता है। कुछ परिभाषाएं इस तरह की हैं
__CLR_OR_THIS_CALL exception();
__CLR_OR_THIS_CALL exception(const char *const&);
__CLR_OR_THIS_CALL exception(const char *const&, int);
__CLR_OR_THIS_CALL exception(const exception&);
exception& __CLR_OR_THIS_CALL operator=(const exception&);
virtual __CLR_OR_THIS_CALL ~exception();
virtual const char * __CLR_OR_THIS_CALL what() const;
मेरा प्रश्न यह है कि मैं इस बिल्डिंग मुद्दे को mingw gcc पर कैसे रोकूं? क्या मुझे एक नई कक्षा बनाना चाहिए जो std :: runtime_error से विरासत में है और इसके बजाय इसे फेंक दें?
'std :: अपवाद :: अपवाद (कॉन्स char *)' एक सी ++ मानक नहीं है, बल्कि एक एमएस विशिष्ट प्रत्यारोपण http://en.cppreference.com/w/cpp/error/exception/exception –