यहां हम देखेंगे कि C++ में sizeof और alignof ऑपरेटर के क्या अंतर हैं। alignof() ऑपरेटर C++11 में पेश किया गया है।
alignof() ऑपरेटर बाइट्स में संरेखण प्राप्त करने के लिए उपयोग किया जाता है। इसके लिए प्रकार के उदाहरणों की आवश्यकता होती है। प्रकार या तो पूर्ण प्रकार या संदर्भ प्रकार होता है। एक और ऑपरेटर sizeof() ऑपरेटर है, जो एक प्रकार का आकार लौटाता है। सामान्य डेटाटाइप के लिए sizeof और alignof समान मान लौटाते हैं। कुछ उपयोगकर्ता-परिभाषित डेटाटाइप के लिए, alignof कुछ अलग मान लौटाता है। आइए उदाहरण देखें ताकि विचार मिल सके।
उदाहरण
#includeusing namespace std; struct MyStruct{ int x; double y; char z; }; main() { cout << "The sizeof(MyStruct): " << sizeof(MyStruct) << endl; cout << "The alignof(MyStruct): " << alignof(MyStruct) << endl; }
आउटपुट
The sizeof(MyStruct): 24 The alignof(MyStruct): 8