सी ++ मध्ये, "एलएल = लाँग लाँग वापरणे" आणि "टाइपपेफ लाँग लाँग एलएल" मध्ये काय फरक आहे?


उत्तर 1:

पहिला टाइप टायर्स आणि दुसरा प्रकार परिभाषा.

एक प्रकार उपनाव फक्त स्त्रोत संकलनात टाइप करतो.

एक टाइपपेफ ज्ञात प्रकारांच्या कोशात टाइप करतो.

टाइपपेफ प्रकार निर्माण करू शकतो, परंतु वापरणे कलम आधीच ज्ञात प्रकारासाठी उपनाव तयार करते.

आपल्या उदाहरणात हा फरक न करता फरक आहे, परंतु पॉईंटर्स, संदर्भ इत्यादींशी संबंधित प्रकारच्या सुलभतेने अनुवादित होऊ शकत नाही.

मी असे एखादे उपनाव किंवा टाइपपेफ वापरण्यास नकार देऊ कारण ते फारच माहिती नसलेले आहे आणि आधीपासूनच बरेच पर्याय आहेत जसे की

int64_t
uint32_t

[| u] intN_t

चार

इंट

तरंगणे

आपणास सीएसटीडींट समाविष्ट करून हे आणि सर्व मॅक्स आणि एमआयएन स्थिर मिळतात.

# समावेश 

(stdint.h)


उत्तर 2:

अर्थात काहीही फरक नाही. मानक ([dcl.typedef]) म्हणतात:

एक टायपिडिफ-नाव देखील उपनाम घोषित करुन ओळखले जाऊ शकते. वापरणारा कीवर्ड अनुसरण करणारा अभिज्ञापक टाइपिडफ-नेम आणि वैकल्पिक followingट्रिब्यूट-स्पेसिफायर-सेक बनतो जो अभिज्ञापक त्या टाइपपेफ-नावाच्या अनुषंगाने येतो. हे समान अर्थशास्त्र आहे जसे की हे टाइपपेफ निर्देशकाद्वारे सादर केले गेले आहे.

एलएल = लाँग वापरुन घोषणा; एक उपनाव-घोषणा आहे.