2009-08-07 16 views
5

सीपीपी फ़ाइल में कार्यों के क्रम में एक मानक है?सीपीपी फ़ाइल में कार्यों का क्रम


देखते हैं:

  • वैश्विक कार्यों
  • कंस्ट्रक्टर्स
  • विनाशकर्ता
  • ही टिककर खेल
  • setters
  • algoritmic कार्यों
  • अगर क्यूटी , स्लॉट्स
  • अगर एक व्युत्पन्न वर्ग, overrided कार्यों
  • स्थिर कार्यों
  • किसी भी समारोह प्रकार है कि मैं नाम नहीं कर सकते हैं ...

cpp फ़ाइल में

, वहाँ के लिए किसी भी अच्छा तरीका है आदेश?

मैं उन्हें आदेश देता हूं जैसा कि मैंने ऊपर दी गई सूची में लिखा था।

मुझे पता है कि यह कुछ भी नहीं बदलता है, लेकिन मैं अच्छी लग रही कोड के बारे में परवाह ...

आप कैसे ऑर्डर करुं?

उत्तर

2

कक्षा के अंदर, भाषा द्वारा कोई सख्त नियम नहीं है। कक्षा के बाहर आपको यह सुनिश्चित करने की आवश्यकता है कि एक घोषणा एक परिभाषा से पहले हो जब दोनों अलग हों।

सामान्य तौर पर, आपको उस टीम के लिए आपके साथ काम स्रोत फ़ाइलों के बारे में किसी भी प्रारूप नियमों को निर्धारित सेट हो जाएगा मिल जाएगा। यह सिर्फ सौंदर्यशास्त्र है, हालांकि, इस कार्यक्रम के वास्तविक निष्पादन पर इसका कोई प्रभाव नहीं पड़ता है।

class MyClass 
{ 
public: 
    MyClass(); 
    ~MyClass(); 

    void start(); 

protected: 
    static void init(MyClass *); 

private: 
    int m_iCounter; ///< counter variable for.... 
}; 

सीपीपी में इस प्रकार दिखाई देगा:

10

मेरी व्यक्तिगत आदेश वर्ग घोषणा के अंदर आदेश द्वारा दिया जाता है

MyClass::MyClass() : 
    m_iCounter(0) 
{ 
    ... 
} 

MyClass::~MyClass() { 
    ... 
} 

void MyClass::start() { 
    ... 
} 

void MyClass::init(MyClass *) { 
    ... 
} 

आदेश का पालन के रूप में परिभाषित किया गया है:

  1. कंस्ट्रक्टर्स + Destructors
  2. (केवल क्यूटी परियोजना के लिए रों :) signals
  3. सार्वजनिक तरीकों - महत्व है, उदा द्वारा आदेश दिया पहले तो start() और stop(), आता है getters और setters
  4. संरक्षित तरीकों
  5. संरक्षित सदस्यों
  6. निजी तरीकों
  7. निजी सदस्यों

आशा है कि मदद करता है महत्व द्वारा आदेश दिया।

Ciao, क्रिस

4

यह मूर्खतापूर्ण लग सकता है, लेकिन इतना कंस्ट्रक्टर्स पहले आओ, तो सार्वजनिक doStuff तरीकों, तो करीब तरीकों मैं, " 'सामान्य' उपयोग की आदेश" से मेरे सार्वजनिक तरीकों का आदेश देने की कोशिश .. इस "नियम" का अपवाद ~ विनाशक है, जो अंतिम निर्माता के बाद आता है।

अंतिम कोई भी निजी "सहायक" विधियां आता है।

मैं सभी भाषाओं में इस दृष्टिकोण का उपयोग करता हूं ... (सी ++, जावा, सी #, पर्ल, श, या जो कुछ भी) और किसी ने वास्तव में इसके लिए मुझे अभी तक शॉट नहीं किया है (अभी तक)।

चीयर्स। कीथ।

  • सार्वजनिक, संरक्षित, निजी तरीकों
  • सार्वजनिक, संरक्षित, निजी चर

:

3

तरह से मैं आदेश देने के लिए इस्तेमाल किया कर रहा हूँ सिम्बियन प्लेटफॉर्म जहां आदेश है से है इसके लिए कारण पिछड़ा संगतता के लिए पहले से जारी किए गए इंटरफेस को विस्तारित करने के नियमों द्वारा निर्देशित किया गया था। चूंकि जोड़ने की सबसे अधिक संभावना एक निजी चर है, इसलिए उन्हें कक्षा के अंत में रखा जाता है ताकि एक नया जोड़ना कक्षा में किसी भी अन्य चर के स्थान को नहीं बदलेगा। इंटरफ़ेस को बदलने वाली चीजें तब 'सार्वजनिक, संरक्षित' क्रम में इससे पहले आती हैं। ऑर्डरिंग को कक्षा विधियों के लिए कॉपी किया गया है हालांकि ये कक्षा के उदाहरण में किसी भी चर के स्मृति स्थान को नहीं बदलेगा।

और आभासी कार्यों के लिए दिशा निर्देश के बारे में पूछना नहीं है,)

2

सबसे महत्वपूर्ण से सबसे कम करने के लिए:

  • निजी चर (मजाक कर नहीं, वे की अंदरूनी कामकाज के सबसे पता चलता है अपने वर्ग)
  • कंस्ट्रक्टर्स
  • लोक तरीके
  • संरक्षित तरीके
  • Priv उच्च स्तर: ऊपर, निचले स्तर: नीचे, दूसरे शब्दों में, संरचना अपने तरीकों इतना है कि वे केवल विधियों के नीचे स्थित कॉल तरीके

तरीकों खुद को उनके "अमूर्त के स्तर" द्वारा आदेश दिया जाना चाहिए खा लिया।

1

मैं अपने सीडीपी फ़ाइल में कार्यों को प्राप्त करने के लिए अपने आईडीई का उपयोग करता हूं, और यह वर्णमाला के अनुसार आदेश देता है, या मैं एक खोज करता हूं, और जब आप टाइप करते हैं तो खोज के साथ, यह बहुत तेज़ है।

तो मेरे लिए .cpp फ़ाइल में फ़ंक्शंस के क्रम के आधार पर वर्कफ़्लो में बिल्कुल कोई अंतर नहीं है ...

2

हमारी कंपनी का मानक है:

  1. कंस्ट्रक्टर्स
  2. विनाशकर्ता
  3. सार्वजनिक विधियों (वर्णानुक्रम में क्रमित)
  4. निजी methors (वर्णानुक्रम में क्रमित)
+0

मैं वर्णमाला को लिंक नहीं करता हूं। यदि आप नाम को दोबारा प्रतिक्रिया देते हैं, तो यह स्थिति बदल सकता है। सबसे पहले, यह याद रखना एक और बात है। दूसरा, यह पता लगाने के लिए स्रोत नियंत्रण में एक और जटिल अंतर शामिल है। – Robert

+0

आपके लिए सुझाव देने वाले नामों को दोबारा करने के लिए यह वास्तव में दुर्लभ है। अधिकतर क्योंकि हमें अपने अधिकांश पुराने कोड के लिए COM compatability बनाए रखना है (हमारे पास ऐसे उत्पाद हैं जो 15 से अधिक वर्षों से शिपिंग कर रहे हैं)। अधिकांश सी ++ कोड दूर जा रहा है, धीरे-धीरे सी # और वीबी.नेट के साथ बदल दिया गया है। यह मेरी समझ है कि अंतिम घटक अगले साल की शुरुआत में सेवानिवृत्त हो जाते हैं। .NET कोडिंग मानकों अलग हैं। – Tangurena

1

कभी-कभी किसी के लिए आसान है एक अनाम नामस्थान में कुछ स्थानीय सहायक कार्य (उर्फ अनाम नामस्थान) सीपीपी फ़ाइल के भीतर। यदि ऐसा है, तो मैं उन कार्यों को शीर्ष पर (सीपीपी फ़ाइल के भीतर) रखने की अनुशंसा करता हूं, बस यह सुनिश्चित करने के लिए कि उन्हें से पहले किसी भी अन्य कार्य को परिभाषित किया गया है जो उन्हें कॉल करेगा।

3

यह अब तक की तुलना में बहुत कम महत्वपूर्ण है। इन सभ्य आईडीई में इन दिनों (या होना चाहिए) एक राइट-क्लिक या अन्य सरल इशारा के साथ परिभाषा या संदर्भ में जाने की क्षमता है। कोड के माध्यम से खोज समय की बर्बादी है।

मैं आम तौर पर उन्हें ऑर्डर: निर्माता नाशक जो भी आदेश मैं बाकी

मैं फिर वापस जाने के लिए और समूह तार्किक/संबंधित कार्यक्षमता को लागू एक साथ

यह शायद समूह से संबंधित बातें/क्रम में अधिक महत्वपूर्ण है एक सीपीपी फ़ाइल में पठनीयता के लिए हेडर फ़ाइल में चीजें हैं।

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