में एक अनन्य आईडी उत्पन्न करना C++ में दो (या अधिक) छोटी चींटियों से एक अद्वितीय आईडी उत्पन्न करने का सबसे अच्छा तरीका क्या है? मैं ग्राफ में शिखर की विशिष्ट पहचान करने की कोशिश कर रहा हूं। शिखर में डेटा के रूप में दो से चार शॉर्ट इन्स होते हैं, और आदर्श रूप से आईडी उनमें से किसी प्रकार का हैश होगा। गति या आसानी से पोर्टेबिलिटी और विशिष्टता पसंद करते हैं।सी ++
यहां बहुत सारे महान उत्तर हैं, मैं आज रात उन सभी को आजमा रहा हूं ताकि यह देखने के लिए कि मेरी समस्या सबसे अच्छी तरह फिट बैठती है। मैं जो कर रहा हूं उस पर कुछ और शब्द।
ग्राफ ऑडियो फ़ाइल से नमूने का संग्रह है। मैं पुरानी फ़ाइल से एक नई ऑडियो फ़ाइल उत्पन्न करने के लिए ग्राफोव चेन के रूप में ग्राफ का उपयोग करता हूं। चूंकि प्रत्येक वर्टेक्स कुछ नमूने स्टोर करता है और दूसरे नमूने को इंगित करता है, और नमूने सभी छोटी चींटियां हैं, इसलिए डेटा से आईडी उत्पन्न करना स्वाभाविक लग रहा था। उन्हें लंबे समय तक लंबे समय तक जोड़ना अच्छा लगता है, लेकिन शायद कुछ 0 0 2 3 generateID
जितना सरल हो, मुझे बस इतना चाहिए। सुनिश्चित नहीं है कि विशिष्टता की गारंटी के लिए कितना स्थान आवश्यक है, यदि प्रत्येक वर्टेक्स 2 16 बिट नमूने स्टोर करता है, तो 2^32 संभव संयोजन सही होते हैं? और इसलिए यदि प्रत्येक वर्टेक्स 4 नमूने स्टोर करता है, तो 2^64 संभावित संयोजन होते हैं?
लाइब्रेरी और प्लेटफ़ॉर्म विशिष्ट समाधान इस प्रश्न के लिए वास्तव में प्रासंगिक नहीं हैं। मैं कोई और नहीं चाहता जो मेरे प्रोग्राम को अतिरिक्त पुस्तकालयों को डाउनलोड करने या अपने ओएस के अनुरूप कोड बदलने के लिए संकलित कर सके।
मैं वास्तव में बात करता हूं कि एक संघ केवल ऐसा करने के लिए एक क्लीनर तरीका प्रदान करेगा, लेकिन यह स्वाद का विषय है। –
fyi, इस तरह के एक संघ के साथ टाइप-पनिंग अपरिभाषित व्यवहार है। – scpayson