POD C++ में एक संक्षिप्त नाम है जिसका अर्थ है प्लेन ओल्ड डेटा। यह एक क्लास/स्ट्रक्ट है जिसमें केवल मेंबर वेरिएबल्स होते हैं और कोई मेथड्स, कंस्ट्रक्टर्स, डिस्ट्रक्टर्स, वर्चुअल फ़ंक्शन्स आदि नहीं होते। उदाहरण के लिए,
उदाहरण
#include<iostream> using namespace std; // POD struct MyStruct { int key; string data; }; int main() { struct MyStruct s; s.key = 1; s.data = "hello"; return 0; }
स्ट्रक्ट MyStruct में कोई यूजर-डिफाइंड ctor, dtor आदि नहीं है और इसलिए यह एक POD है।
एक एग्रीगेट एक सरणी या एक क्लास है जिसमें कोई यूजर-डिक्लेयर्ड कंस्ट्रक्टर्स नहीं हैं, कोई private या protected नॉन-स्टेटिक डेटा मेंबर्स नहीं हैं, कोई बेस क्लासेस नहीं हैं, और कोई वर्चुअल फ़ंक्शन्स नहीं हैं।
एक एग्रीगेट क्लास को POD कहा जाता है यदि इसमें कोई यूजर-डिफाइंड कॉपी-असाइनमेंट ऑपरेटर और डिस्ट्रक्टर नहीं है और इसका कोई भी नॉन-स्टेटिक मेंबर नॉन-POD क्लास, नॉन-POD की सरणी, या रेफरेंस नहीं है।