2010-07-07 15 views
5

मैं अपनी परियोजना के सभी अप्रयुक्त तरीकों को खोजने की कोशिश कर रहा हूं। मेरे पास ऐसा करने के खोज के तरीके हैं, लेकिन मुझे लगता है कि सबसे अधिक विश्वसनीय जवाब अप्रचलित के रूप में मेरे सभी कार्यों को घोषित करना था, और जब तक मुझे कोई चेतावनी नहीं मिली, तब तक इस विशेषता को हटा दें।अप्रचलित के रूप में चिह्नित करें

समस्या यह है कि मुझे नहीं पता कि फ़ंक्शन को अप्रचलित के रूप में कैसे घोषित किया जाए। जब मैं लिखता हूं:

[Obsolete] 
    class Vector3{ 

    }; 

वीएस2005 मुझे बताता है कि अप्रचलित मौजूद नहीं है। कोई सुझाव?

+0

आप या में "कोड में संदर्भित नहीं" के रूप में अप्रयुक्त अप्रयुक्त मतलब के रूप – DevinB

+0

दोनों "ठेठ निष्पादन के दौरान इस्तेमाल किया नहीं"। अप्रयुक्त कोड (कोड में संदर्भित नहीं किया जा सकता है) जो अन्य तरीकों का संदर्भ देता है (इन्हें संदर्भित किया जाता है, लेकिन कभी निष्पादित नहीं किया जाता है)। – Sara

+5

क्या यह वास्तव में सी ++ है? –

उत्तर

2

मैं अपने स्रोत कोड के बाकी पता नहीं है, लेकिन आप एक

using System; 
शीर्ष पर

होना चाहिए।

+0

यह देखने के लिए कि क्या यह ठीक करता है, '[System.ObsoleteAttribute]' आज़माएं। –

+0

अब यह कहता है कि सिस्टम मौजूद नहीं है। – Sara

+3

वह सी # है। ओपी सी ++ का उपयोग कर रहा है। – Default

8

जीसीसी में आप __attribute__ ((deprecated)) का उपयोग कार्यों को टैग करने के लिए टैग करने के लिए करते हैं।

ऐसा लगता है कि __declspec(deprecated) वीएस में चाल कर सकता है। डायग्नोस्टिक के परिणामस्वरूप आपको चेतावनी स्तर 1 को भी सक्षम करना होगा।

देखें http://msdn.microsoft.com/en-us/library/044swk7y%28VS.80%29.aspx

+0

ग्रेट !! वह चाल है। – Sara

+1

सबसे आसान तरीका एक '#if परिभाषित (_MSCVER) # डिफ्रैक्टेड __declspec (बहिष्कृत) परिभाषित करना है (परिभाषित) #elif परिभाषित (__ जीएनयूसी__) # डिफ्रैक्टेड __attribute__ ((बहिष्कृत) परिभाषित करें) # endif', तो आप' डिप्टीटेड क्लास वेक्टर 3 लिख सकते हैं '। – MSalters

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

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