Aynı bellek alanında farklı zamanlarda farklı veri tiplerini tutmaya yarayan şey. Otel gibi düşünebilirsiniz. Aynı otel odasında 5 farklı müşteri farklı zamanlarda kalabilir. Örneğin odamız 4 kişilik olsun. 4 kişilik odada 4 kişi kalabilir ama 1 kişi de kalabilir. Unionda da durum aşağı yukarı böyle.
#include <iostream>
using namespace std;
union Meyve{
int elma; // 4 byte
char armut; // 1 byte
};
int main() {
Meyve meyve;
// Bellekte en büyük eleman kadar alan kaplar
cout << sizeof(meyve) << endl; // 4
meyve.elma = 46;
cout << meyve.elma << endl; // 46
cout << meyve.armut << endl; // .
meyve.armut = 'A';
cout << meyve.elma << endl; // 65
cout << meyve.armut << endl; // A
}
Leave a Reply