


Bagaimana untuk mengosongkan dan menggunakan semula aliran ostring?
Oct 24, 2024 am 01:53 AMMenggunakan semula aliran ostring
Dalam usaha mengoptimumkan peruntukan sumber, seseorang mungkin menghadapi keperluan untuk menetapkan semula aliran ostring kepada keadaan asalnya untuk mengelakkan berlebihan peruntukan. Artikel ini menangani isu ini dengan meneroka pelbagai kaedah untuk mengosongkan dan menggunakan semula aliran ostring.
Menetapkan Semula Objek
Untuk mengembalikan aliran ostring kepada keadaan asalnya, urutan jelas dan str boleh digunakan:
<code class="cpp">// Clear any flags (e.g., eof) s.clear(); // Empty the buffer s.str("");</code>
Pendekatan ini secara berkesan mengosongkan penimbal dan menetapkan semula penunjuk strim. Sebagai alternatif, pembersihan manual boleh dilakukan diikuti dengan mencari ke permulaan:
<code class="cpp">// Clear any flags s.clear(); // Reset put pointer (for output streams) s.seekp(0); // Reset get pointer (for input streams) s.seekg(0);</code>
Kaedah ini menghalang pengagihan semula yang tidak perlu dengan menulis ganti kandungan penimbal sedia ada. Contohnya:
<code class="cpp">std::ostringstream s; s << "hello"; s.seekp(0); s << "b"; assert(s.str() == "bello");</code>
Untuk menggunakan rentetan bagi fungsi gaya C, std::ends boleh digunakan untuk menambahkan aksara null penamat:
<code class="cpp">// Append a terminating null s << std::ends; assert(s.str().size() == 5 && std::strlen(s.str().data()) == 1);</code>
Walaupun std::ends ialah tinggalan daripada std::strstream yang telah ditamatkan, ia kekal berguna dalam situasi di mana ia perlu untuk bekerja dengan tatasusunan aksara gaya C tanpa penamatan nol yang jelas.
Atas ialah kandungan terperinci Bagaimana untuk mengosongkan dan menggunakan semula aliran ostring?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Langkah Format Fungsi Fungsi C Langkah Penukaran Kes

Gulc: Perpustakaan C dibina dari awal

Apakah jenis nilai yang dikembalikan oleh fungsi bahasa C? Apa yang menentukan nilai pulangan?

Apakah definisi dan peraturan panggilan fungsi bahasa C dan apakah itu

Bagaimana Perpustakaan Templat St Standard (STL) berfungsi?

Di manakah nilai pulangan fungsi bahasa C yang disimpan dalam ingatan?

Penggunaan dan perkongsian frasa yang berbeza

Berapakah minimum biasa dari pembahagi umum maksimum fungsi bahasa C?
