Struct-н тухай.
Дийлдэшгүй залхуу юм байна. Struct гэж юу вэ? Хэсэг зүйлсийг нэгтгэж нэг бүлэг болгон ашигладаг бүтэц юм. Өмнө нь pair-ын талаар үзсэн. Энэ нь хос болгож авж байсан. Харин бид маш олон зүйлсийг pair ашиглан бичихэд бага зэрэг асуудалтай учрах юм. Өөрөөр хэлбэл олон ширхэг зүйлсийг хос болгосон гэж үзэхэд хандахын тулд a.first.first.first гэх жишэээний. Мөн аль байрлалдах нь ямар утгыг агуулж байгаа билээ гэх мэт бодох асуудал ихтэй. Struct нь бүлэг үүсгэхдээ бүлгийн гишүүн бүрийн авах төрөл мөн нэрийг нь бичэж өгдгөөрөө давуу талтай. Жинээ нь бид Person гэсэн бүтэц үүсгэсэн гэж бодъё. Тэгвэл энэ бүлэгт name, age, sex байж болох юм. Сониноос тэр цэг таслалыг мартваа. Доорхи код энэ хаягт байгаа.
struct нэр{Дийлдэшгүй залхуу юм байна. Struct гэж юу вэ? Хэсэг зүйлсийг нэгтгэж нэг бүлэг болгон ашигладаг бүтэц юм. Өмнө нь pair-ын талаар үзсэн. Энэ нь хос болгож авж байсан. Харин бид маш олон зүйлсийг pair ашиглан бичихэд бага зэрэг асуудалтай учрах юм. Өөрөөр хэлбэл олон ширхэг зүйлсийг хос болгосон гэж үзэхэд хандахын тулд a.first.first.first гэх жишэээний. Мөн аль байрлалдах нь ямар утгыг агуулж байгаа билээ гэх мэт бодох асуудал ихтэй. Struct нь бүлэг үүсгэхдээ бүлгийн гишүүн бүрийн авах төрөл мөн нэрийг нь бичэж өгдгөөрөө давуу талтай. Жинээ нь бид Person гэсэн бүтэц үүсгэсэн гэж бодъё. Тэгвэл энэ бүлэгт name, age, sex байж болох юм. Сониноос тэр цэг таслалыг мартваа. Доорхи код энэ хаягт байгаа.
гишүүний төрөл гишүүний нэр;
гишүүний төрөл гишүүний нэр;
....
гишүүний төрөл гишүүний нэр;
};
Жишээ нь:
struct person{
string name;
string sex;
int age;
};
- //struct
- #include <vector>
- #include <iostream>
- using namespace std;
- struct person{
- string name; // name нь нэрийн утгыг авах учир тэмдэгт мөр
- string sex; // sex нь хүйсийн утгыг авах учир тэмдэгт мөр
- int age; // age нь насны утгыг авах болхоор тоо
- } shiree, lol; // эдгээр нь глобал хувьсагчид болон зарлагдаж байна.
- void pr( person x ) {
- // энэ функц нь нэг person төрлийн хувьсагч авах ба түүнийг хэвлэнэ:
- cout << "NAME:" << x.name << endl; // нэрийг хэвлэх
- cout << "SEX:" << x.sex << endl; // хүисийг хэвлэх
- cout << "AGE:" << x.age << endl; // насыг хэвлэх
- cout << endl;
- return;
- }
- int main() {
- /*Дийлдэшгүй залхуу юм байна. Энэ удаад struct-ын талаар бичих болно.
- Struct гэж юу вэ? Хэсэг зүйлсийг нэгтгэж нэг бүлэг болгон ашигладаг
- бүтэц юм. Өмнө нь pair-ын талаар үзсэн. Энэ нь хос болгож авж байсан.
- Харин бид маш олон зүйлсийг pair ашиглан бичихэд бага зэрэг асуудалтай
- учрах юм. Өөрөөр хэлбэл олон ширхэг зүйлсийг хос болгосон гэж үзэхэд
- хандахын тулд a.first.first.first гэх жишэээний. Мөн аль байрлалдах нь
- ямар утгыг агуулж байгаа билээ гэх мэт бодох асуудал ихтэй. Struct нь бүлэг
- үүсгэхдээ бүлгийн гишүүн бүрийн авах төрөл мөн нэрийг нь бичэж өгдгөөрөө
- давуу талтай. Жишээ нь бид Person гэсэн бүтэц үүсгэсэн гэж бодъё.
- Тэгвэл энэ бүлэгт name, age, sex байж болох юм. Сониноос тэр цэг таслалыг мартваа.
- };*/
- shiree.age = 12; // shiree гэсэн нэртэй хувьсагчийн age
- //гэсэн гишүүнд 12 гэсэн утга оноох
- shiree.sex = "Eregtei"; // shiree гэсэн нэртэй хувьсагчийн sex гэсэн
- // гишүүнд Eregtei гэсэн утга оноох
- shiree.name = "sandal"; // shiree гэсэн нэртэй хувьсагчийн name гэсэн
- // гишүүнд sandal гэсэн утга оноох
- pr( shiree ); // shiree гэсэн хувьсагчийн утгуудыг хэвлэх.
- person a; // person төрлийн a гэсэн хувьсагч зарлаж байна.
- a.age = 0;
- a.name = "Nergui";
- a.sex = "Saarmag";
- pr( a );
- cin >> a.name >> a.sex >> a.age; // name, sex, age үүдийг унших.
- vector<person> v; // person төрлийн хувьсагч агуулах vector
- v.push_back( a );
- pr( v[0] );
- return 0;
- }
Comments
Post a Comment