C++ இல் உள்ள எடுத்துக்காட்டு நிரல்கள் - C++: பொருள்களுக்கான நினைவக இட ஒதுக்கீடு | 11th Computer Science : Chapter 14 : Classes and objects
பொருள்களுக்கான நினைவக இட ஒதுக்கீடு
இனக்குழு வரையறுப்பின் ஒரு பகுதியாக உறுப்பு செயற்கூறுகள் வரையறுக்கப்பட்டால் மட்டுமே அவை உருவாக்கப்பட்டு நினைவகத்தில் இருத்தப்படுகின்றன. அந்த இனக்குழுவைச் சார்ந்த அனைத்துப் பொருள்களும் ஒரே உறுப்பு செயற்கூறை பயன்படுத்திக் கொள்வதால், ஒவ்வொரு பொருள் உருவாக்கப்படும் போதும் உறுப்பு செயற்கூறுகளுக்கு தனித்தனி நினைவாக இடம் ஒதுக்கப்படுவதில்லை. உறுப்புமாறிகளுக்குத் தேவையான நினைவக இடம் மட்டும் ஒவ்வொரு பொருள் உருவாக்கப்படும் போதும் தனித்தனியே ஒதுக்கப்படும். ஏனெனில் ஒவ்வொரு பொருளின் தரவு உறுப்புகள் / உறுப்பு மாறிகள் வெவ்வெறு மதிப்புகளைக் கொண்டிருக்கும்.
பொருளுக்கான நினைவக இட ஒதுக்கீட்டை விளக்கும் நிரல்
இனக்குழுவில் பொருளானது உருவாக்கப்பட்ட பின்னர் தான் அதன் உறுப்புகளுக்கு நினைவக இடமானது ஒதுக்கப்படும்.
include <iostream>
using namespace std;
//The members will be allocated with memory space only after the creation of the class type object
class product
{
int code, quantity;
float price;
public:
void assignData();
void Print();
};
int main()
{
product p1, p2;
cout<<”\n Memory allocation for object p1 ” <<sizeof(p1);
cout<<”\n Memory allocation for object p2 ” <<sizeof(p2);
return 0;
}
வெளியீடு :
Memory allocation for object p1 12
Memory allocation for object p2 12
நிரலில் உள்ள assign data () மற்றும் print () உறுப்பு செயற்கூறுகளுக்குப் பொதுவான நினைவகப் பகுதி ஒதுக்கீடு செய்யப்படும். P1 மற்றும் P2 ஆகிய இரண்டு பொருள்களுக்கான தரவு உறுப்புகள் அனைத்தும் பொதுவானப் பகுதியில் உள்ள உறுப்பு செயற்கூறுகளை அணுக முடியும்.
P1 மற்றும் P2 பொருள்களுக்கான நினைவக ஒதுக்கீடு விளக்கம்
செயல்பாடு 3
கீழ்கண்ட குறிமுறையில் S1 மற்றும் S2 பொருள்களுக்கான நினைவக அளவு யாது?
class sum
{
int n1,n2; public:
void add(){int n3=10;n1=n2=10;}
} s1,s2;