தொகுதி பாடங்கள் (1/2)
வரிசைகள் மற்றும் திசையன்கள்
C++ இல், தரவு சேகரிப்புகளை நிர்வகிப்பது முதன்மையாக இரண்டு கருவிகள் மூலம் செய்யப்படுகிறது: பழைய பாணி அணிவரிசைகள் (C-பாணி அணிவரிசைகள்) மற்றும் வெக்டர்கள் (std::vector). நிலையான மற்றும் டைனமிக் நினைவகத்திற்கு இடையிலான வேறுபாட்டைப் புரிந்துகொள்வது திறமையான குறியீட்டை எழுதுவதற்கு அடிப்படையாகும்.
1. நிலையான வரிசைகள் (சி-பாணி அணிவரிசைகள்)
ஒரு வரிசை என்பது தொடர்ச்சியான நினைவக இடங்களில் சேமிக்கப்பட்ட அதே வகை கூறுகளின் தொகுப்பாகும். நிலையான வரிசையின் அளவு தொகுக்கும் நேரத்தில் தெரிந்திருக்க வேண்டும், பின்னர் மாற்ற முடியாது:
int grades[5] = {18, 22, 25, 28, 30}; // Array of 5 integersமுக்கிய பண்புகள்:
- ** நிலையான அளவு**: இயக்க நேரத்தில் நீங்கள் கூறுகளைச் சேர்க்கவோ அகற்றவோ முடியாது.
- ஸ்டாக் ஒதுக்கீடு: மிக வேகமாக ஒதுக்கவும், ஒதுக்கவும்.
- அணுகல்: இண்டெக்ஸ் ஆபரேட்டர்
[]வழியாக முடிந்தது (எ.கா., முதல் உறுப்புக்குgrades[0]).
2. டைனமிக் வெக்டர்கள் (std::vector)
C++ ஸ்டாண்டர்ட் டெம்ப்ளேட் லைப்ரரி (STL) std::vector வகுப்பை வழங்குகிறது, இது டைனமிக் வரிசையைக் குறிக்கிறது. அதைப் பயன்படுத்த, நீங்கள் <vector> தலைப்பைச் சேர்க்க வேண்டும்:
#include <vector>
std::vector<int> numbers; // Creates an empty vector of integersபொதுவான செயல்பாடுகள்:
- **இறுதியில் சேர்
- அளவு:
.size()முறையானது தற்போது வெக்டரில் உள்ள உறுப்புகளின் எண்ணிக்கையை வழங்குகிறது. - பாதுகாப்பான அணுகல்:
[]ஆபரேட்டரைத் தவிர, நீங்கள்.at(index)முறையைப் பயன்படுத்தலாம் (எ.கா.,numbers.at(0)), இது குறியீட்டு எல்லைக்கு வெளியே இருந்தால் விதிவிலக்கு அளிக்கும்.
std::vector<int> scores = {90, 85};
scores.push_back(95); // scores now contains {90, 85, 95}
std::cout << scores.size(); // Prints 3நீங்களே முயற்சி செய்து பாருங்கள்
எண்களின் பெயரிடப்பட்ட முழு எண்களின் std ::வெக்டரை அறிவிக்கவும். .push_back() முறையைப் பயன்படுத்தி அதன் உள்ளே 10, 20 மற்றும் 30 மதிப்புகளைச் சேர்த்து, அதன் அளவை numbers.size() ஐப் பயன்படுத்தி அச்சிடவும்.
குறிப்பைக் காட்டு
வெக்டரை `std::vector<int> எண்கள்;`கொண்டு அறிவிக்கவும், மூன்று எண்களை`.push_back(value)`உடன் செருகவும், அதை`std::cout << numbers.size();` என அச்சிடவும்.
3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்
முக்கியமாக, 5 உறுப்புகளின் தரவரிசை வரிசை வரையறுக்கப்படுகிறது. அணிவரிசையில் உள்ள அனைத்து உறுப்புகளின் கூட்டுத்தொகையைக் கணக்கிடுவதற்கு ஒரு for loop ஐ எழுதவும், அதை மாறி தொகையில் சேமித்து, std::cout ஐப் பயன்படுத்தி அச்சிடவும்.
குறிப்பைக் காட்டு
`for (int i = 0; i < 5; ++i)`loop ஐப் பயன்படுத்தவும் மற்றும் லூப்பில் உள்ள ஒவ்வொரு உறுப்பையும்`sum += கிரேடுகளுடன்[i];` கூட்டவும்.
3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்
C++ இல் std::vector இன் முடிவில் ஒரு உறுப்பைச் சேர்க்க சரியான முறை என்ன?
std::vector<int> numbers; // come aggiungere il valore 50?