Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Menukar QString kepada std::string dalam Qt?

Bagaimana untuk Menukar QString kepada std::string dalam Qt?

Linda Hamilton
Linda Hamiltonasal
2024-10-31 07:48:30724semak imbas

 How to Convert a QString to a std::string in Qt?

Menukar QString kepada std::string

Dalam pengaturcaraan Qt, adalah perkara biasa untuk bekerja dengan objek QString untuk mengendalikan data teks. Walau bagaimanapun, kadangkala anda mungkin perlu menukar QString kepada jenis rentetan C standard, std::string.

Kaedah: Menggunakan toStdString()

Cara paling mudah dan paling mudah untuk menukar QString kepada std::string ialah menggunakan kaedah toStdString():

<code class="cpp">QString qs;
// Perform operations on the QString...
std::string stdStr = qs.toStdString();
std::cout <p>Secara lalai, toStdString() secara dalaman menggunakan fungsi QString::toUtf8() untuk mencipta std::string. Ini memastikan penukaran Unicode-selamat, mengendalikan aksara bukan ASCII dengan betul.</p>
<h3>Contoh</h3>
<p>Berikut ialah contoh yang menunjukkan penggunaan toStdString():</p>
<pre class="brush:php;toolbar:false"><code class="cpp">#include <qstring>
#include <iostream>

int main()
{
    QString str = "Hello, world!";

    // Convert QString to std::string
    std::string output = str.toStdString();

    // Output the std::string to the console
    std::cout <p> Menjalankan program ini akan mencetak:</p>
<pre class="brush:php;toolbar:false">Hello, world!

Nota Tambahan

  • Kaedah toStdString() tersedia untuk digunakan dengan Qt versi 5 dan lebih baru.
  • Jika anda perlu menukar std::string kembali kepada QString, anda boleh menggunakan kaedah QString::fromStdString().

Atas ialah kandungan terperinci Bagaimana untuk Menukar QString kepada std::string dalam Qt?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn