やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

Qtで文字列を扱う基本(tr(), QString.fromLocal8bit(), qDebug())

 最低限の基本。

成果物

github.com

f:id:ytyaru:20181126152542p:plain

対象環境

  • Raspbierry pi 3 Model B+
  • Raspbian stretch 2018-06-27
  • Qt 5.7.1

ソースコード

 Qt Widgetプロジェクトとする。

文字リテラル

 日本語を使う場合は以下のようなメソッドを使う。

tr("日本語など");
QString::fromLocal8bit("日本語など");

 日本語のWindows文字コードがShift-JISのせいでQString::fromLocal8bit()を使わねばならないようだ。

変数に代入

 文字列の型はQString

QString str1 = tr("日本語など");
QString str2 = QString::fromLocal8bit("日本語など");

qDebug()

 printf()の代わりにqDebug()を使う。

#include <QDebug>
qDebug() << tr("日本語など");

参考

所感

 C, C++は文字列の扱いすら面倒な言語。Qtが用意してくれるなら楽ができる。ただしコードに汎用性が無くなる。