கட்டமைப்புக்கும் வர்க்கத்திற்கும் இடையிலான வேறுபாடு

நூலாசிரியர்: Laura McKinney
உருவாக்கிய தேதி: 1 ஏப்ரல் 2021
புதுப்பிப்பு தேதி: 4 மே 2024
Anonim
Acids and Bases_Part-3
காணொளி: Acids and Bases_Part-3

உள்ளடக்கம்


ஒரு கட்டமைப்பு மற்றும் வர்க்கம் இரண்டும் தனிப்பயனாக்கப்பட்ட தரவு வகையை உருவாக்க ஒரு வழியை வழங்குகிறது, இது நிகழ்வுகளை உருவாக்க மேலும் பயன்படுத்தப்படலாம். சி ++ ஒரு வகுப்பை உருவாக்க கட்டமைப்பின் பங்கை விரிவுபடுத்துகிறது. கட்டமைப்பு மற்றும் வர்க்கம் இரண்டும் ஒரு வித்தியாசத்தைத் தவிர எல்லா வகையிலும் ஒத்தவை, இயல்புநிலையாக கட்டமைப்பு அதன் அனைத்து உறுப்பினர்களையும் "பொது" என்றும், இயல்பாக வர்க்கம் அதன் அனைத்து உறுப்பினர்களையும் "தனிப்பட்டதாக" கொண்டுள்ளது. ஒப்பீட்டு விளக்கப்படத்தைப் பயன்படுத்துவதன் மூலம் கட்டமைப்புக்கும் வகுப்பிற்கும் உள்ள வித்தியாசத்தைப் படிப்போம்.

  1. ஒப்பீட்டு விளக்கப்படம்
  2. வரையறை
  3. முக்கிய வேறுபாடுகள்
  4. ஒற்றுமைகள்
  5. முடிவுரை

ஒப்பீட்டு விளக்கப்படம்

ஒப்பீட்டுக்கான அடிப்படைஅமைப்புவர்க்கம்
அடிப்படை அணுகல் விவரக்குறிப்பு அறிவிக்கப்படவில்லை என்றால், இயல்பாகவே அனைத்து உறுப்பினர்களும் பொது.அணுகல் விவரக்குறிப்பு அறிவிக்கப்படவில்லை என்றால், இயல்பாகவே அனைத்து உறுப்பினர்களும் தனிப்பட்டவர்கள்.
பிரகடனம் struct structure_name {
struct_element 1 என தட்டச்சு செய்க;
struct_element 2 ஐ தட்டச்சு செய்க;
struct_element 3;
.
.
.
};
வகுப்பு வகுப்பு_பெயர் {
தரவு உறுப்பினர்;
உறுப்பினர் செயல்பாடு;
};
உதாரணமாக கட்டமைப்பின் நிகழ்வு கட்டமைப்பு மாறி என்று அழைக்கப்படுகிறது.ஒரு வகுப்பின் நிகழ்வு பொருள் என்று அழைக்கப்படுகிறது.


கட்டமைப்பின் வரையறை

ஒரு அமைப்பு என்பது வேறுபட்ட தரவு வகைகளின் மாறிகளின் தொகுப்பாகும், இவை அனைத்தும் ஒரே பெயரால் குறிப்பிடப்படுகின்றன. ஒரு கட்டமைப்பு அறிவிப்பு ஒரு வார்ப்புருவை உருவாக்குகிறது, இது கட்டமைப்பின் ஒரு நிகழ்வை உருவாக்க பயன்படுகிறது. கட்டமைப்பு பின்வருமாறு அறிவிக்கப்படுகிறது.

struct sname {type struct_element1; struct_element2 என தட்டச்சு செய்க; struct_element3; . . . } மாறி 1, மாறி 2 ,. . .

ஒரு கட்டமைப்பு அறிவிக்கப்படுவதை தொகுப்பாளருக்கு ‘struct’ என்ற முக்கிய சொல் வரையறுக்கிறது. ‘ஸ்னேம்’ என்பது கட்டமைப்பிற்கு கொடுக்கப்பட்ட பெயரைக் குறிக்கிறது. கட்டமைப்பு அறிவிப்பு எப்போதும் ஒரு அரைப்புள்ளியால் நிறுத்தப்படுகிறது, ஏனெனில் இது ஒரு அறிக்கையாக கருதப்படுகிறது. மேலே உள்ள குறியீட்டில் (மாறி 1, மாறி 2) செய்யப்பட்டுள்ளபடி கட்டமைப்பின் முடிவுகளுக்கு முன்னர் நீங்கள் அதை அறிவிக்கலாம் அல்லது கட்டமைப்பின் பெயரை கட்டமைப்பின் பெயருடன் முந்திய பெயரை எழுதுவதன் மூலம் பிரதான () இல் கட்டமைப்பின் நிகழ்வை அறிவிக்கலாம்.

// உதாரணமாக. main () {sname S1, S2; }

இங்கே எஸ் 1 மற்றும் எஸ் 2 ஆகியவை கட்டமைப்பின் நிகழ்வுகளாகும். கட்டமைப்பின் நிகழ்வுகள் "கட்டமைப்பு மாறி" என்று அழைக்கப்படுகின்றன. கட்டமைப்பின் உடலுக்குள் அறிவிக்கப்பட்ட உறுப்பை புள்ளி (.) ஆபரேட்டரின் பயன்பாட்டின் மூலம் கட்டமைப்பு மாறிகள் மூலம் அணுகலாம்.


// எடுத்துக்காட்டு எஸ் 1. struct_element1;

  • கட்டமைப்பின் வரிசையும் உருவாக்கப்படலாம், இதற்காக, நீங்கள் முதலில் ஒரு கட்டமைப்பை அறிவிக்க வேண்டும், பின்னர், அந்த வகைகளின் வரிசையை அறிவிக்க வேண்டும்.

// மாதிரி struct sname sarray;

மேலே உள்ள அறிக்கை பத்து மாறிகளைக் கொண்ட ‘சர்ரே’ என்ற பெயருடன் ஒரு வரிசையை உருவாக்குகிறது, மேலும் ஒவ்வொரு மாறியும் ‘ஸ்னேம்’ இல் வரையறுக்கப்பட்டுள்ளபடி ஒழுங்கமைக்கப்படுகிறது.

  • நீங்கள் ஒரு கட்டமைப்பு உறுப்பினரை ஒரு செயல்பாட்டிற்கு அனுப்பலாம், மேலும் ஒரு முழு கட்டமைப்பையும் ஒரு செயல்பாட்டிற்கு அனுப்பலாம்.
  • கட்டமைப்பு மாறிகள் பெயரின் முன்னால் ‘*’ வைப்பதன் மூலம், முழு எண் சுட்டிக்காட்டி, வரிசை சுட்டிக்காட்டி போன்ற ஒரு கட்டமைப்பு சுட்டிக்காட்டி அறிவிக்கப்படலாம்.

// மாதிரி struct sname * S1;

குறிப்பு:

‘கட்டமைப்பு’ கூறுகள் தொடர்ச்சியான நினைவக இடத்தில் சேமிக்கப்படுகின்றன.

வர்க்கத்தின் வரையறை

OOP இல் உள்ள வகுப்பு ஒரு புதிய வகையை வரையறுக்கிறது, இது தரவு உறுப்பினர்கள் மற்றும் உறுப்பினர் செயல்பாட்டைக் கொண்டுள்ளது, அவை வகுப்பின் தரவு உறுப்பினர்களை அணுக பயன்படுகிறது. வகுப்புகளின் நிகழ்வுகள் "பொருள்கள்" என்று அழைக்கப்படுகின்றன, அவை ஒவ்வொன்றும் ஒரு வர்க்கத்தின் அதே அமைப்பைக் கொண்டுள்ளன. வர்க்கம் ஒரு தர்க்கரீதியான சுருக்கமாகும், அதேசமயம், ஒரு பொருளுக்கு உடல் இருப்பு உள்ளது. வர்க்கம் கட்டமைப்பிற்கு ஒத்ததாக இருக்கிறது. வகுப்பை பின்வருமாறு அறிவிக்கலாம்.

class class_name {தனிப்பட்ட தரவு உறுப்பினர்கள் மற்றும் உறுப்பினர் செயல்பாடுகள். access_specifier வகை data_member; mem_funct (அளவுரு பட்டியல்) type என தட்டச்சு செய்க. . list} பொருள் பட்டியல்;

இங்கே, வர்க்கம் ஒரு முக்கிய சொல்லாகும், இது ஒரு வர்க்கம் அறிவிக்கப்பட்டுள்ளதை தொகுப்பாளருக்கு அறிவிக்கிறது. OOP இன் முக்கிய அம்சம் தரவு மறைத்தல் ஆகும், இது "பொது", "தனியார்", "பாதுகாக்கப்பட்ட" மூன்று அணுகல் குறிப்பான்களை வழங்குவதன் மூலம் நிறைவேற்றப்படுகிறது. தரவு உறுப்பினர்கள் அல்லது உறுப்பினர் செயல்பாடுகளை அறிவிக்கும் போது வகுப்பில் எந்த அணுகல் குறிப்பையும் நீங்கள் குறிப்பிடவில்லை என்றால், இயல்பாகவே அனைத்தும் தனிப்பட்டதாகக் கருதப்படுகின்றன. உங்கள் திட்டத்தின் பிற பகுதிகளால் பொது அணுகல் விவரக்குறிப்பு அனுமதிக்கிறது, செயல்பாடுகள் அல்லது தரவை அணுகலாம். வகுப்பின் தனியார் உறுப்பினர்களை அந்த வகுப்பின் உறுப்பினரால் மட்டுமே அணுக முடியும். பாதுகாக்கப்பட்ட அணுகல் விவரக்குறிப்பு பரம்பரை காலத்தில் பயன்படுத்தப்படுகிறது. அணுகல் விவரக்குறிப்பை நீங்கள் அறிவித்தவுடன், அதை நிரல் முழுவதும் மாற்ற முடியாது.

பொருள்கள் வகுப்புகளின் உதாரணத்தைத் தவிர வேறில்லை. வகுப்பின் உறுப்பினர்கள் அதே வகுப்பின் பொருளால் ஒரு புள்ளி (.) ஆபரேட்டரைப் பயன்படுத்தி அணுகலாம்.

//object.mem_funct (வாதங்கள்);

  • பொருளை ஒரு செயல்பாட்டிற்கான வாதமாகவும் அனுப்பலாம்.
  • ஒரு பொருளின் சுட்டிக்காட்டி உருவாக்கப்படலாம்.
  1. கட்டமைப்புகள் மற்றும் வகுப்புகளுக்கு இடையிலான முக்கிய வேறுபாடு என்னவென்றால், இயல்பாகவே கட்டமைப்பின் அனைத்து உறுப்பினர்களும் பொதுவில் இருக்கிறார்கள், இயல்பாகவே வகுப்பின் அனைத்து உறுப்பினர்களும் தனிப்பட்டவர்கள்.

ஒற்றுமைகள்:

  • சி ++ இல் கட்டமைப்பு மற்றும் வர்க்கம் இரண்டும் செயற்கையாக சமமானவை.
  • கட்டமைப்பு மற்றும் வர்க்கம் ஆகிய இரண்டுமே தங்கள் உறுப்பினர்களில் சிலரை தனிப்பட்டதாக அறிவிக்க முடியும்.
  • ஒரு கட்டமைப்பு அல்லது வகுப்பின் பெயரை தனியாக வகையாகப் பயன்படுத்தலாம்.
  • கட்டமைப்பு மற்றும் ஒரு வர்க்கம் இரண்டும் பரம்பரை பொறிமுறையை ஆதரிக்கின்றன.

முடிவுரை:

C இல் உள்ள கட்டமைப்பானது தரவுகளை மறைக்க அனுமதிக்காததால் சில வரம்புகளைக் கொண்டிருந்தது, ‘struct’ டேட்டாடைப்பை உள்ளமைக்கப்பட்ட வகைகளைப் போல கருத முடியாது, கட்டமைப்புகள் பரம்பரை ஆதரிக்காது. சி ++ இல் உள்ள கட்டமைப்பு இந்த வரம்புகளை மீறியது. சி ++ இல், வகுப்புகள் என்பது கட்டமைப்பின் விரிவாக்கப்பட்ட பதிப்பாகும். புரோகிராமர் தரவைப் பிடிப்பதற்கும் வகுப்பை இரண்டையும் செயல்படுத்துவதற்கும் தரவைப் பிடிப்பதற்கு மட்டுமே கட்டமைப்பைப் பயன்படுத்துவதற்கும் எளிதானது.