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
cerr
kā 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. wcerr
izmanto 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 cout
un wcout
parādīšanai izmanto standarta izvadi, lai atkļūdotu savas programmas, taču vienmēr ir laba prakse izmantot cerr
un wcerr
parā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.
wcerr
Objekts tiek nodrošināta inicializēts laikā vai pirms pirmo reizi objekts tipa ios_base::Init
konstrukciju. Pēc wcerr
objekta 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() == &wcout
ti 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". wcerr
Objekts 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