C ++ wclog - Perpustakaan Standard C ++

Objek wclog di C ++ adalah objek wostream kelas. Ia dikaitkan dengan stderr aliran output ralat C standard.

Perbezaan antara clog dan wclog

menyumbat char pengguna (watak sempit) sebagai jenis watak. Ia boleh digunakan untuk watak ASCII dan ANSI.

Untuk pengantarabangsaan, kita memerlukan rentetan Unicode yang tidak sesuai dengan char. wclog menggunakan wchar_t (watak lebar) dan boleh digunakan untuk watak Unicode.

Perbezaan antara wcerr dan wclog

wclogdan wcerr, kedua-duanya dikaitkan dengan stderr, tetapi berbeza dari wcerrsegi arti aliran masuk wclogdan tidak diikat secara automatik wcout.

Output buffered lebih cekap daripada output yang tidak dibeli. Dalam kes output yang disangga, semua output disimpan ke dalam pemboleh ubah dan ditulis ke cakera sekaligus. Untuk output yang tidak dibeli, kita harus terus menulis ke cakera.

Output buffered tidak disukai untuk kesalahan kritikal. Sekiranya berlaku kerosakan sistem, mungkin terjadi situasi ketika output masih dalam penyangga dan tidak ditulis ke cakera dan pesan kesalahan tidak dapat diambil. Kami tidak mampu kehilangan data ralat sekiranya berlaku kerosakan sistem sehingga kami terus menulis kesalahan kritikal ke cakera walaupun lebih lambat.

wclogbiasa digunakan untuk tujuan pembalakan. Untuk pembalakan peristiwa yang tidak kritikal, kecekapan lebih penting sehingga wclog lebih disukai wcerr.

pengisytiharan wclog

 wclog ostream luaran;

Ia ditakrifkan dalam header file "> header file.

The wclogobjek dipastikan akan dimulakan pada atau sebelum masa pertama objek jenis ios_base::Initdibina. wclogtidak terikat dengan aliran lain.

"Wc" di wclogmerujuk kepada "watak lebar", oleh itu wclogbermaksud "log watak lebar". The

wclogobjek digunakan bersama dengan operator penyisipan (<<) untuk menampilkan aliran watak. Sintaks umum adalah:

 wclog << varName;

atau

 wclog << "Beberapa Rentetan";

Pengendali pengekstrakan dapat digunakan lebih dari sekali dengan kombinasi pemboleh ubah, rentetan dan manipulator (seperti endl):

 wclog << var1 << "Beberapa Tali" << var2 << endl;

Contoh: Bagaimana wclog berfungsi?

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

When you run the program, a possible output will be (if there is error in opening the file):

 Error while opening the file data.txt

Artikel menarik...