CPP 040 – Union

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
}

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *