Објект вцлог у језику Ц ++ је објекат класе востреам. Повезан је са стандардним излазним током грешке Ц стдерр.
Разлика између зачепљења и блокирања
заглавити кориснике цхар (уски знак) као тип знака. Може се користити за АСЦИИ и АНСИ знакове.
За интернационализацију су нам потребни Уницоде низови који се не уклапају у цхар. вцлог користи вцхар_т (широки знак) и употребљив за Уницоде знакове.
Разлика између вцерр и вцлог
wclog
и wcerr
оба су повезана са stderr
, али се разликује од тога wcerr
у смислу да су потоци у wclog
баферу и нису аутоматски повезани са wcout
.
Међуспремни излаз је ефикаснији од небуферираног. У случају баферираног излаза, сав излаз се чува у променљивој и записује на диск одједном. За небуферисани излаз, морамо наставити са уписивањем на диск.
Међуспремни излаз није пожељан за критичне грешке. У случају пада система, може доћи до ситуације да је излаз још увек био у баферу и није уписан на диск, а порука о грешци се не може преузети. Не можемо себи приуштити губитак података о грешкама у случају пада система, па настављамо са записивањем критичних грешака на диск иако је спорији.
wclog
се обично користи за сечу дрва. За некритично евидентирање догађаја, ефикасност је важнија, па је предност вцлог-у wcerr
.
вцлог декларација
спољни остреам вцлог;
Дефинисано је у датотеци заглавља "> датотека заглавља.
wclog
Објекат је осигуран бити иницијализовани току или прије први пут предмет типа ios_base::Init
се гради. wclog
није везан ни за један други ток.
„Вц“ се wclog
односи на „широк карактер“, што wclog
значи „широк запис знакова“. Тхе
wclog
објект се користи заједно са оператором уметања (<<) да би се приказао ток знакова. Општа синтакса је:
вцлог << варНаме;
или
вцлог << "Неки низ";
Оператор екстракције може се користити више пута са комбинацијом променљивих, низова и манипулатора (попут endl
):
вцлог << вар1 << "Неки низ" << вар2 << ендл;
Пример: Како функционише вцлог?
#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