C ++ wcerr - C ++ standarta bibliotēka

C ++ objekts wcerr ir klases ostream objekts. Tas ir saistīts ar standarta C kļūdas izvades straumes stderr.

Atšķirība starp cerr un wcerr

cerrkā rakstzīmju tipu izmanto char (šauru rakstzīmi). To var izmantot ASCII un ANSI rakstzīmēm.

Internacionalizācijai mums ir nepieciešamas Unicode virknes, kas neietilpst rakstzīmēs. wcerrizmanto wchar_t(plašs raksturs) un izmantojams Unicode rakstzīmēm.

Atšķirība starp wcout un wcerr

Iesācēju C ++ programmētāji kļūdu parādīšanai coutun wcoutparādīšanai izmanto standarta izvadi, lai atkļūdotu savas programmas, taču vienmēr ir laba prakse izmantot cerrun wcerrparādīt kļūdas.

Tas ir tāpēc, ka tā vietā, lai ekrānā parādītu kļūdu straumi, vēlāk varat mainīt kļūdu straumi, lai kļūdas ierakstītu failā.

wcerr deklarācija

 extern wostream wcerr; 

Tas ir definēts galvenes failā "> header file.

wcerrObjekts tiek nodrošināta inicializēts laikā vai pirms pirmo reizi objekts tipa ios_base::Initkonstrukciju. Pēc wcerrobjekta konstruēšanas izteiksme (wcerr.flags & unitbuf)nav nulle, tas nozīmē, ka jebkura izeja, kas nosūtīta šiem straumes objektiem, nekavējoties tiek izvadīta operētājsistēmā. Arī wcerr.tie() == &wcoutti wcerr.tie()atdevi &wcout, kas nozīmē, ka wcout.flush()tiek izpildīts pirms izvades operācijas par wcerr.

"Wc" wcerr norāda uz "plašu rakstzīmi", un "kļūdīties" nozīmē "kļūda", tātad wcerr nozīmē "plaša rakstura kļūda". wcerrObjekts tiek izmantots kopā ar ievietošanas operatoru (<<), lai parādītu plūsmu rakstzīmes. Vispārējā sintakse ir šāda:

 wcerr << varName;

vai

 wcerr << "Dažas stīgas";

Ekstrakcijas operatoru var izmantot vairākas reizes, izmantojot mainīgo, virkņu un manipulatoru kombināciju (piemēram endl):

 wcerr << var1 << "Daži stīgas" << var2 << endl;

Piemērs: Kā darbojas wcerr?

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

Palaidot programmu, izeja būs: (ja failu nevarēja atvērt)

 Kļūda, atverot failu data.txt

Interesanti raksti...