C ++ ummistus - C ++ Standard Library

Ummistusobjekt C ++ -s on klassi ostream objekt. See on seotud standardse C vea väljundvoo stderriga.

clogja cerrmõlemad on seotud stderr, kuid see erineb cerrselles mõttes, et voogudes clogon puhverdatud ega ole automaatselt seotud cout.

Puhverdatud väljund on tõhusam kui pakkimata väljund. Puhverdatud väljundi korral salvestatakse kogu väljund muutujasse ja kirjutatakse korraga kettale. Pakendamata väljundi jaoks peame kirjutama kettale.

Puhverdatud väljundit ei eelistata kriitiliste vigade korral. Süsteemi krahhi korral võib tekkida olukord, kus väljund oli endiselt puhvris ja seda ei olnud kettale kirjutatud ning tõrketeadet ei saa tuua. Me ei saa lubada süsteemi krahhi korral veaandmete kaotamist, seega kirjutame kriitilised vead plaadile, kuigi see on aeglasem.

clogkasutatakse tavaliselt metsaraie eesmärgil. Mittekriitiliste sündmuste logimisel on olulisem efektiivsus, seega clogeelistatakse seda cerr-le.

ummistuse deklaratsioon

 välimine ostreami ummistus;

See on määratletud päisefailis "> päisefail.

clogOn kindlustatud lähtestada ajal või enne esimest korda objekti tüübiga ios_base::Initon ehitatud. clogpole ühegi teise vooga seotud.

"Cl" ummistuses viitab "tähemärgile", seega tähendab ummistus "märgilogi".

Ummistusobjekti kasutatakse koos sisestusoperaatoriga (<<) tähemärkide voo kuvamiseks. Üldine süntaks on:

 ummistama << varName;

või

 ummistus << "Some String";

Ekstraheerimisoperaatorit saab kasutada mitu korda koos muutujate, stringide ja manipulaatorite (näiteks endl) kombinatsiooniga :

 ummistus << var1 << "Mõni string" << var2 << endl;

Näide: Kuidas ummistus töötab?

 #include #include using namespace std; int main() ( char fileName() = "data.txt"; ifstream infile(fileName); if(infile) cout << infile.rdbuf(); else clog << "Error while opening the file " << fileName << endl; return 0; )

Selles programmis kasutatakse logi andmete voogesitamiseks ummistust, kuna antud juhul pole viga rakenduse jaoks kriitiline. Seega on puhverdatud ummistuse kasutamine tõhusam

Programmi käivitamisel on väljund (kui faili avamisel on viga):

 Viga faili data.txt avamisel

Huvitavad Artiklid...