Aracılığıyla paylaş


Arabelleğe alma etkileri

Aşağıdaki örnek, arabelleğe alma etkilerini gösterir.Programın yazdırmasını beklediğiniz please wait, 5 saniye bekleyin ve sonra devam edin.Çıktıyı arabelleğe alınmış olduğundan, mutlaka bu şekilde ancak çalışmaz.

// effects_buffering.cpp
// compile with: /EHsc
#include <iostream>
#include <time.h>
using namespace std;

int main( )
{
   time_t tm = time( NULL ) + 5;
   cout << "Please wait...";
   while ( time( NULL ) < tm )
      ;
   cout << "\nAll done" << endl;
}

Mantıksal olarak çalışmasını sağlayacak program için cout nesne gerekir boş kendisini iletisi görünür olduğunda.Temizlemek için bir ostream nesne, göndermeden flush manipulator:

cout << "Please wait..." << flush;

Bu adım, önce bekleyin iletisi yazdırır sağlama arabellek temizler.Ayrıca endl manipulator, arabelleği boşaltır ve satır başı return–linefeed çıkarır veya kullanabileceğiniz cin nesne.Bu nesne (ile cerr veya clog nesneleri) genellikle bağlıdır cout nesne.Bu nedenle, herhangi bir kullanımı cin (veya cerr veya clog nesneleri) temizler cout nesne.

Ayrıca bkz.

Başvuru

Çıkış akımları