fork download
  1.  
  2. // Энэ удаад vector-ын талаар үзэх болно
  3. #include <cstdio>
  4. #include <vector> // vector ашиглахын тулд энэ санг заавал бичнэ
  5. using namespace std; // энэ нь мөн байх ёстой.
  6.  
  7. int main() {
  8. /*
  9. vevtor гэж юу вэ? энэ нь энгийн массивыг илүү хялбарчилсан зүйл юм.
  10. жишээ нь vector-т элемэнт устгах нэмэх гэх үйлдлүүдийг хялбараар шийдэж
  11. өгсөн байдаг ба ашиглахад хялбар мөн бичиглэл бага орох юм. Ер нь бол
  12. массив.
  13. */
  14. vector<int> v; // v гэсэн нэртэй вектор нь int буюу бүхэл төрлийн хувьсагч
  15. // авч чадна гэсэн утгатай. Ингэж зарласан тохиолдолд v гэсэн
  16. // векторт маань ямар ч элемэнт байхгүй ба хоосон байгаа.
  17.  
  18. // Элемэнт нэмэх.
  19. v.push_back( 247 ); // push_back( утга ) байх ба энэ нь векторт маань элемэнт нэмж байгаа гэсэн үг
  20. // хамгийн ард талд нь нэмж байгаа.
  21.  
  22. // хэвлэх
  23. printf("%d\n",v[0]); // одоо вектор маань хоосон биш болсон тул бид эхний элемэнтийг хэвлэхийг хүсвэл
  24. // ингэж хэвлэнэ. Мөн адил 0-ээс эхэлж дугаарлана. хэрвээ 3-р элемэнтийг хэвлэххийг
  25. // хүвсэл v[3] гэхэд л хангаллтай ч бидэнд 3-р элемэнт гэж байхгүй юм. Векторын нэг ашигтай
  26. // тал нь илүүц хэрэггүй санах ой ашиглахгүй юм
  27.  
  28. v.push_back( 1 ); // хамгийн ард 1-ыг нэмж байна.
  29. v.push_back( 2 ); // хамгийн ард 2-ыг нэмж байна.
  30.  
  31. // хэмжээ буюу элемэнтийн тоог мэдэх.
  32. // бид маш олон тоо нэмсэн байлаа тэгээд одоо вектор нь хэдэн элемэнттэй болсныг мэдэхийг хүсвэл
  33. int n = v.size(), i; // гэхэд л хангалттай ба векторт байгаа элемэнтийн тоог буцаах болно.
  34.  
  35. // бүх элемэнтийг хэвлэж байна.
  36. for(i = 0; i < n; i++) {
  37. printf("%d ", v[i]);
  38. }
  39. printf("\n");
  40.  
  41. // элемэнт устгах.
  42. // бид 1-р элемэнтийг устгахыг хүсвэл энэ нь их амархан
  43. v.erase( v.begin()+1 ); // 1-р элемэнтийг устгаж байна
  44.  
  45. n = v.size(); // хэмжээ нь 1 элемэнт хассан тул өөрчлөгдөх тул дахин олно.
  46. // бүх элемэнтийг хэвлэж байна.
  47. for(i = 0; i < n; i++) {
  48. printf("%d ", v[i]);
  49. }
  50. printf("\n");
  51.  
  52. // элемэнт нэмэх
  53. // бид 1-р байрлалд 4 гэсэн тоог нэмэхийг хүсвэл энэ нь их амархан
  54. v.insert( v.begin()+1, 4 ); // 1р байрлалд 4 гэсэн элемэнтийг нэмлээ
  55. // бүх элемэнтийг хэвлэж байна.
  56.  
  57. n = v.size(); // хэмжээ нь 1 элемэнт нэмсэн тул өөрчлөгдөх тул дахин олно.
  58. for(i = 0; i < n; i++) {
  59. printf("%d ", v[i]);
  60. }
  61. printf("\n");
  62.  
  63. // vetor-оо бид хоосон буюу ямар ч элемэнтгүй болгохыг хүсвэл энэ нь их амархан.
  64. v.clear(); // хоослох.
  65. return 0;
  66. }
  67.  
Success #stdin #stdout 0s 4544KB
stdin
Standard input is empty
stdout
247
247 1 2 
247 2 
247 4 2