मैं एक कस्टम मॉलोक का उपयोग करने के लिए लिंक समय पर डिफ़ॉल्ट मॉलोक को प्रतिस्थापित करना चाहता हूं। लेकिन जब मैं अपने कार्यक्रम में malloc को फिर से परिभाषित करने की कोशिश, मैं इस त्रुटि मिलती है:क्या विंडोज़ पर लिंक समय पर मॉलोक को फिर से परिभाषित करने का कोई तरीका है?
MSVCRT.lib(MSVCR80.dll) : error LNK2005: _malloc already defined in test.lib(test.obj)
यह किसी भी यूनिक्स पर पूरी तरह से काम करता है, और यह सबसे अधिक कार्यों के साथ विंडोज पर काम करता है, लेकिन malloc के साथ नहीं। मैं यह कैसे कर सकता हूँ? और मॉलोक के साथ क्या अलग है जो इसे ओवरराइड करने की अनुमति नहीं देता है?
मैं मैं हर अपने कस्टम malloc साथ malloc, या मैक्रो का उपयोग यह करने के लिए करने के लिए कॉल की जगह सकता है पता है, लेकिन मैं नहीं बल्कि हर तीसरे पक्ष के पुस्तकालय को संशोधित नहीं होगा।
एक ही चर्चा में यह उल्लेख किया गया है कि दृष्टिकोण "CRT से पहले lib" मज़बूती (strdup) – Weidenrinde
क्या '_CrtSetAllocHook' के बारे में जैसे कार्यों के साथ काम नहीं करता: https://msdn.microsoft.com/en-us/library/ cy8c7wz5.aspx – dashesy