Sfat 1: Cum se creează un matrice
Sfat 1: Cum se creează un matrice
Arrays sunt una dintre cele mai simple și,Poate cea mai utilizată formă de stocare structurată a datelor atunci când procesează informații în programele de calculator. Principalul lor avantaj este posibilitatea de a avea acces rapid la element prin numărul său de serie (index). Puteți crea o matrice în C ++ în mai multe moduri.
Veți avea nevoie
- - Editor de text;
- - compilator C ++.
instrucție
1
Creați o serie de dimensiuni fixe. Declarația sa trebuie să conțină un tip de valoare, un identificator variabil și o specificație a dimensiunii care să specifice numărul de elemente. De exemplu, o matrice unidimensională de numere întregi constând din zece elemente pot fi definite ca: aNumbers int [10] In mod similar, se pot crea multi-dimensional matrici: int aNumbers [3] [4] Pentru a inițializa aceste variabile pot folosi literals array: int aNumbers_1 [10] = {1, 2, 3}; int aNumbers_2 [3] [3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}} Rețineți că numărul de elemente literale array-initializare poate fi mai puțin decât pentru variabilele pe care le inițializează. În acest caz, părțile elementelor din matricea destinație nu vor fi pur și simplu atribuite valori.
2
Creați o matrice a cărei volum este determinat de literal inițial. Declarați o matrice fără a specifica dimensiunea acesteia. matrice, definite în acest fel, fii sigurtrebuie să fie inițializată: int aNumbers [] = {1, 2, 3}; În același mod, puteți crea matrice multidimensionale. Cu toate acestea, "variabila" pot face doar o primă măsurătoare: int aNumbers [] [3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}, {0, 1, 2}}; în acest fel este foarte convenabil să definiți tablouri statice constante. Volumul lor poate fi calculat la momentul compilării folosind cuvântul cheie.
3
Creați o matrice într-o rețea alocată dinamicmemorie. Definiți un indicator la valoarea tipului de element al matricei. Selectați memoria pentru cantitatea necesară de date. Alocați valoarea indicelui primului octet al blocului selectat la pointer. Utilizați o alocare de memorie funcții de bibliotecă C (calloc, malloc), operatorul nou C ++ sau funcții specifice platformei (cum ar fi VirtualAlloc, VirtualAllocEx în Windows). De exemplu: int * paNumbers_0 = (int *) malloc (sizeof (int) * 10); int * paNumbers_1 = new int (10); paNumbers_0 [1] = 0xFF; // acces la elementul paNumbers_1 [2] = 0xFF; // acces închidere elementuPosle astfel creat folosind matrice trebuie să elibereze memoria alocată: gratuit (paNumbers_0); delete [] paNumbers_1;
4
Creați un obiect al clasei care implementează funcționalitateamatrice. Aceste clase sau șabloane de clasă conținute în multe cadre populare și biblioteci. Astfel, în C ++ șabloane standard de bibliotecă (STL) are un container std :: vector. Crearea și utilizarea unei matrice bazate pe acesta, după cum urmează: std :: vector <int> oVector; // returneaza oVector.resize obiect array (10); // size schimbare massivaoVector [0] = 1; // acces la elementuoVector.push_back (0xFF); // adauga o atenție elementul konetsObratite faptului că, din cauza managementului automat al memoriei și disponibilitatea metode convenabile de modificare (redimensionarea, adăugarea de elemente, etc), utilizarea unor astfel de clase este adesea mai avantajoasă decât utilizarea de matrice în stilul C .
Sfat 2: Cum se creează o matrice de creastă
De obicei, RAID-matrice sunt create pentru a îmbunătăți nivelul de securitate a datelor. Cel mai adesea le folosesc la întreprinderi comerciale, unde este extrem de important să nu pierdem documentația sau alte date.
Veți avea nevoie
- - controler RAID.
instrucție
1
Există mai multe tipuri de matrice RAID. Toți au avantajele lor. În același timp, pentru a crea un anumit tip de matrice, trebuie să aveți numărul corect de unități de hard disk. Mai întâi, determinați scopul creării unei matrice RAID. Plecând de la aceste concluzii, obțineți cantitatea potrivită de hard disk-uri.
2
Dacă placa de bază suportăsetarea discurilor într-o matrice RAID, apoi pur și simplu conectați hard-discurile selectate la ea. În caz contrar, se recomandă utilizarea controlerelor speciale RAID, care vă permit să creați și să configurați datele corespunzătoare matrice.
3
Dacă decideți să creați o matrice RAID cu scopul de acreșteți performanța computerului, apoi utilizați tipul RAID 0. În acest caz, aveți nevoie de cel puțin două hard-discuri. Amintiți-vă că volumul lor total va fi egal cu volumul unui hard disk mai mic. În acest caz, se recomandă conectarea fiecărui hard disk la un slot IDE separat.
4
Dacă aveți nevoie pentru a asigura siguranța de importantfișiere, apoi selectați tipul de array RAID 1. În acest caz, informațiile de pe hard disk-ul principal vor fi copiate în mod constant în "oglinda". Dacă unul dintre unitățile de hard disk nu reușește, atunci toate datele stocate pe acesta nu vor fi pierdute. Ca și în exemplul precedent, aveți nevoie doar de două unități de hard disk.
5
Dacă aveți posibilitatea să utilizați patruhard disk pentru a crea o matrice RAID, apoi selectați un tip mixt RAID 0 + 1. Această opțiune de operare sincronă a unităților de hard disk vă permite să îmbunătățiți simultan performanța sistemului și să salvați datele necesare. După conectarea numărului corect de discuri, porniți calculatorul și deschideți meniul BIOS.
6
Accesați meniul responsabil pentru parametrii jobuluihard disk-uri. În câmpul Mod IDE (Mod SATA), selectați opțiunea RAID. Apăsați tasta F10. După ce porniți calculatorul, apare o fereastră care vă cere să creați un tablou. Selectați tipul de RAID de care aveți nevoie și faceți clic pe butonul Creare, specificând scopul fiecărei unități de disc.
Sfat 3: Cum se creează o matrice dinamică
Se numește un set numit de elemente similare o serie de. Această organizare a datelor are o masăavantajele evidente și un dezavantaj - atunci când se creează o matrice, este necesar să se declare dimensiunea în avans, care în viitor nu poate fi schimbată prin metode convenționale. Soluția la această problemă este de a dezvolta rețele dinamice care pot schimba în orice moment numărul elementelor lor. Și pentru aceasta puteți utiliza ambele clase deja create și implementați propriile dvs. folosind instrumentele standard de limbaj de programare.
instrucție
1
Esența principală a matricei dinamice estealocarea de memorie sub datele stocate în ea exact în cantitatea în care este necesar în acest moment. Este cea mai convenabilă implementare a acestei construcții sub forma unei clase - o coajă pentru o matrice. Este necesar să se asigure toate funcțiile care efectuează alocarea și eliberarea de memorie pentru o matrice, precum și operatorii care oferă acces la elementele sale.
2
Creați un obiect dinamic al clasei de înfășurareConstructorul alocă automat memoria cu dimensiunea specificată. În cazul în care cel puțin umple memoria matrice pentru elementele care urmează să fie angajate în totalitate, următoarele acțiuni sunt efectuate la adăugarea datelor următoare: - comanda speciala memoria alocata anterior este eliberat (, șterge gratuit) - toate informațiile din matrice este stocată în stocarea temporară (matrice auxiliar); - memorie alocată matrice de dimensiunea necesară pentru a deține toate datele - într-o nouă serie de stocare temporară sunt plasate toate valorile „vechi“ și se adaugă un nou element.
3
Cel mai bun mod de a lucra curetelele dinamice sunt folosirea clasei bibliotecilor existente. Unul dintre cele mai comune exemple este vectorul de clasă. Acesta include toate funcțiile și iteratoarele necesare funcționării matricei variabile. Modulul de bibliotecă care conține această clasă vine cu orice versiune a compilatorului C ++.
4
Conectați o bibliotecă din matrice dinamică cuUtilizând comanda #include. Pentru a crea un obiect, utilizați clasa vectorială. Deplasarea prin matrice este aceeași ca și în cazul normal, folosind indici. Caracteristici speciale aici sunt funcțiile de adăugare și eliminare a elementelor noi, precum și un număr de metode auxiliare. Exemplu de cod pentru crearea și rularea unui vector din matrice dinamică: #include vector; // declarați o matrice dinamică cu elemente de tip intMas.push_back (10); // adăugați primul element - numărul 10 Mas.push_back (15); // adăugați al doilea element - numărul 15Mas [1] = 30; // al doilea element este scris cu numărul 30Mas.pop_back (); // șterge ultimul element al matricei Aici, atunci când creează o matrice dinamică cu numele Mass, este obligatoriu să specificăm tipul elementelor sale (int), dimensiunea în acest caz nu este specificată.
Sfat 4: Cum să introduceți un matrice
Arrays sunt o formă simplă și eficientăordonarea stocării datelor. Ele sunt folosite în aproape fiecare program de calculator. În cele mai multe cazuri, informațiile din ele se formează în timpul funcționării aplicației. Dar, uneori, trebuie să introduceți o matrice prin obținerea datelor dintr-o sursă sau dintr-o altă sursă.
Veți avea nevoie
- - editor de text sau IDE;
- - compilator C ++.
instrucție
1
Introduceți matricele solicitând date de la utilizator. Calculați sau interogați numărul de elemente pe care doriți să le introduceți. Creați o matrice cu dimensiunea necesară. Adăugați o buclă pentru a itera prin codul programului pentru toate elementele. Într-un ciclu, interogați datele pentru fiecare element, dacă este necesar, verificând corectitudinea intrării. Pot fi utilizate diverse mijloace pentru a efectua introducerea datelor. Utilizarea funcțiilor scanf și wscanf ale bibliotecii C este un mod clasic. Cu toate acestea, aceste funcții nu sunt sigure. Dacă tamponul depășește, poate apărea o eroare de protecție. Fluxurile C ++ asigură o intrare convenabilă și sigură, dar nu sunt lipsite de defecte. Cel mai simplu exemplu de umplere a unei matrice folosind un obiect de flux standard de intrare ar putea arăta astfel: int aNumbers [10]; pentru (int i = 0; i <10; i ++) {std :: cout
2
Introduceți un matrice din fișier. Utilizați funcțiile de introducere formatate (fscanf, fwscanf) și obiectele de file (de exemplu, ifstream) pentru a implementa algoritmi de citire simpli. Urmăriți erorile de intrare utilizând metodele nepotrivite, eșuate, bune, rdstate în cazul utilizării firelor. Un exemplu simplu de citire a datelor dintr-un fișier poate arăta astfel: int aNumbers [10]; std :: ifstream oFileStream ("filename.txt"); if (! oFileStream.fail ()) {for (int i = 0; (i <10) && oFileStream.good (); i ++) oFileStream >> aNumbers [i];} else std :: cout
3
Introduceți matricele direct în codul programului înforma de date statice. Utilizați literali de matrice pentru a inițializa variabilele corespunzătoare. De exemplu, o matrice de valori int tip de lungime nedeterminată, care este un membru al clasei static și declarate ca fiind: class CMyClass {... static const int m_anMyArray []; ...} trebuie inițializată după cum urmează: const int CMyClass :: m_anMyArray [] = {10, 20, 30, 40}; metodă similară se poate administra matrici de structuri de orice complexitate din codul sursă al programelor.