c + + datastrukturer

, c /c + + arrays tillade dig at definere variabler, der kombinerer flere oplysninger af samme art, men, struktur, er en anden bruger defineret datatype, der giver dem mulighed for at kombinere oplysninger af forskellig art. strukturer, som anvendes til at repræsentere en rekord, du vil vel at holde styr på. dine bøger i biblioteket.du vil måske finde følgende attributter med hver bog:,, titel, forfatter, om bog id, fastlæggelse af en struktur: at definere en struktur, skal du bruge føre erklæring.de føre erklæring defineres en ny data type, med mere end ét medlem, for deres program.formatet af atlanterhavet erklæring er:, atlanterhavet [struktur -] {medlem definition; medlem af definitionen;...medlemsstaternes definition;} [en eller flere struktur variabler], struktur, mærke, er fakultativ, og hvert medlem definition er en almindelig variabel definition, som f.eks. int, eller flyde f; eller nogen anden gyldig variabel definition.ved afslutningen af den struktur definition, før den endelige semikolon, du kan angive en eller flere struktur variabler, men det er fakultativ.her er den måde, du ville erklære bogen struktur:, føre bøger (char afsnit [50] char forfatter [50] char omfattet [100]; int book_id;} bog; adgang til struktur medlemmer: for at få adgang til ethvert medlem af en struktur, der bruger vi, medlem adgang operatør (.).den pågældende operatørs kodes som en periode mellem struktur variable navn og struktur medlem, som vi ønsker at få adgang til.du ville bruge, atlanterhavet, nøgleord for at definere variablerne af struktur - typen.følgende er f.eks. forklare, anvendelse af struktur:,&#omfatter < iostream >&#omfatter < cstring > anvendelse af namespace std; føre bøger (char afsnit [50] char forfatter [50] char omfattet [100]; int book_id;}; int vigtigste () (føre bøger book1; //erklærer book1 af type bog føre bøger book2; //erklærer book2 af type bog //bog 1 specifikation strcpy (book1.title "lære c + + programmering"); strcpy (book1.author "chand miyan"); strcpy (book1.subject, "c + + programmering"); book1.book_id = 6495407; //bog 2 specifikation strcpy (book2.title "telecom ("); strcpy (book2.author "yakit singha"); strcpy (book2.subject "telekommunikation"); book2.book_id = 6495700;//Print Book1 info cout << "Book 1 title : " << Book1.title <<endl; cout << "Book 1 author : " << Book1.author <<endl; cout << "Book 1 subject : " << Book1.subject <<endl; cout << "Book 1 id : " << Book1.book_id <<endl; //Print Book2 info cout << "Book 2 title : " << Book2.title <<endl; cout << "Book 2 author : " << Book2.author <<endl; cout << "Book 2 subject : " << Book2.subject <<endl; cout << "Book 2 id : " << Book2.book_id <<endl; return 0; } ,When the above code is compiled and executed, it produces the following result:, Book 1 title : Learn C++ Programming bog 1. forfatter: chand miyan bog 1 om: c + + programmering bog 1 id: 6495407 bog 2 afsnit: telecom fakturering bog 2. forfatter: yakit singha bog 2 om: telecom bog 2 id: 6495700, strukturer, som fungerer argumenter:, du kan få en struktur, som en funktion argument i lignende måde som du passerer enhver anden variabel eller pointer.du kunne få adgang til struktur variabler i lignende måde, som de har adgang til i ovenstående eksempel:,&#omfatter < iostream >&#omfatter < cstring > anvendelse af namespace std; tomrum printbook (føre bøger bog); føre bøger (char afsnit [50] char forfatter [50]; char emne [100]; int book_id;}; int vigtigste () (føre bøger book1; //erklærer book1 af type bog føre bøger book2; //erklærer book2 af type bog //bog 1 specifikation strcpy (book1.title "lære c + + programmering"); strcpy (book1.author "chand miyan"); strcpy (book1.subject, "c + + programmering"); book1.book_id = 6495407; //bog 2 specifikation strcpy (book2.title "telecom ("); strcpy (book2.author "yakit singha"); strcpy( Book2.subject, "Telecom"); Book2.book_id = 6495700; //Print Book1 info printBook( Book1 ); //Print Book2 info printBook( Book2 ); return 0; } void printBook( struct Books book ) { cout << "Book title : " << book.title <<endl; cout << "Book author : " << book.author <<endl; cout << "Book subject : " << book.subject <<endl; cout << "Book id : " << book.book_id <<endl; } ,When the above code is compiled and executed, it produces the following result:, Book title : Learn C++ Programming Book author : Chand Miyan Book subject : C++ Programming Book id : 6495407 Book title : Telecom Billing Book author : Yakit Singha Book om: telecom bog id: 6495700, tips til strukturer: kan du definere tips til strukturer i lignende måde som de definerer fingerpeg til enhver anden variabel, som følger:, føre bøger * struct_pointer. nu kan du opbevare den adresse, en struktur med variabel i den ovenfor definerede pointer variabel.at finde adressen på en struktur varierer de & operatøren, inden struktur navn som følger:, struct_pointer = & book1;, adgang til medlemmerne af en struktur med en indikator for, at struktur, skal du bruge - > operatør som følger:, struct_pointer - > afsnit, lad os skrive frem for eksempel ved anvendelse af struktur pointer, håber, at det vil være let for dig at forstå begrebet:,&#omfatter < iostream >&#omfatter < cstring > anvendelse af namespace std; tomrum printbook (føre bøger * bog); føre bøger (char afsnit [50] char forfatter [50] char omfattet [100]; int book_id;}; int vigtigste () (føre bøger book1; //erklærer book1 af type bog føre bøger book2; //erklærer book2 af type bog//bog 1 specifikation strcpy (book1.title "lære c + + programmering"); strcpy (book1.author "chand miyan"); strcpy (book1.subject, "c + + programmering"); book1.book_id = 6495407; //bog 2 specifikation strcpy (book2.title "telecom ("); strcpy (book2.author, "yakit singha"); strcpy (book2.subject "telekommunikation"); book2.book_id = 6495700; //tryk book1 info, passerer adresse på struktur printbook (& book1); //tryk book1 info, passerer adresse på struktur printbook (& book2); tilbage 0} //denne funktion acceptere pointer til struktur som parameter.void printBook( struct Books *book ) { cout << "Book title : " << book->title <<endl; cout << "Book author : " << book->author <<endl; cout << "Book subject : " << book->subject <<endl; cout << "Book id : " << book->book_id <<endl; } ,When the above code is compiled and executed, it produces the following result:, Book title : Learn C++ Programming Book author : Chand Miyan Book subject : C++ Programming Book id : 6495407 Book title : Telecom Billing Book author : Yakit Singha Book subject : Telecom Book id : 6495700 ,The typedef Keyword,There is an easier way to define structs or you could "alias" types you create. for eksempel:, typedef atlanterhavet (char afsnit [50] char forfatter [50] char omfattet [100]; int book_id;} bøger, du kan bruge, bøger, direkte til definition af variabler, bøger, type, uden at bruge føre nøgleord.følgende er et eksempel:, bøger book1, book2;, du kan bruge, typedef, nøgleord for ikke - structs såvel som følger:, typedef længe int * pint32; pint32 x, y og z;, x, y og z er alle henvisninger til lang bela bene er,



Previous:
Next Page: