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

Linda Hamilton
Lepaskan: 2024-10-31 07:48:30
asal
505 orang telah melayarinya

 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 << stdStr << std::endl;
Salin selepas log masuk

Secara lalai, toStdString() secara dalaman menggunakan fungsi QString::toUtf8() untuk mencipta std::string. Ini memastikan penukaran Unicode-selamat, mengendalikan aksara bukan ASCII dengan betul.

Contoh

Berikut ialah contoh yang menunjukkan penggunaan toStdString():

<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 << output << std::endl;

    return 0;
}</code>
Salin selepas log masuk

Menjalankan program ini akan mencetak:

Hello, world!
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!