前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >QString之arg

QString之arg

作者头像
Qt君
发布2020-02-13 16:41:46
8820
发布2020-02-13 16:41:46
举报
文章被收录于专栏:跟Qt君学编程跟Qt君学编程

QString的arg接口主要用于字符串组合的功能。

arg接口列表

代码语言:javascript
复制
QString arg(const QString &a, int fieldWidth = 0, QChar fillChar = QLatin1Char(' ')) const
QString arg(qlonglong a, int fieldWidth = 0, int base = 10, QChar fillChar = QLatin1Char(' ')) const
QString arg(qulonglong a, int fieldWidth = 0, int base = 10, QChar fillChar = QLatin1Char(' ')) const
QString arg(long a, int fieldWidth = 0, int base = 10, QChar fillChar = QLatin1Char(' ')) const
QString arg(ulong a, int fieldWidth = 0, int base = 10, QChar fillChar = QLatin1Char(' ')) const
QString arg(int a, int fieldWidth = 0, int base = 10, QChar fillChar = QLatin1Char(' ')) const
QString arg(uint a, int fieldWidth = 0, int base = 10, QChar fillChar = QLatin1Char(' ')) const
QString arg(short a, int fieldWidth = 0, int base = 10, QChar fillChar = QLatin1Char(' ')) const
QString arg(ushort a, int fieldWidth = 0, int base = 10, QChar fillChar = QLatin1Char(' ')) const
QString arg(double a, int fieldWidth = 0, char format = 'g', int precision = -1, QChar fillChar = QLatin1Char(' ')) const
QString arg(char a, int fieldWidth = 0, QChar fillChar = QLatin1Char(' ')) const
QString arg(QChar a, int fieldWidth = 0, QChar fillChar = QLatin1Char(' ')) const
QString arg(QStringView a, int fieldWidth = 0, QChar fillChar = QLatin1Char(' ')) const
QString arg(QLatin1String a, int fieldWidth = 0, QChar fillChar = QLatin1Char(' ')) const
QString arg(const QString &a1, const QString &a2) const
QString arg(const QString &a1, const QString &a2, const QString &a3) const
QString arg(const QString &a1, const QString &a2, const QString &a3, const QString &a4) const
QString arg(const QString &a1, const QString &a2, const QString &a3, const QString &a4, const QString &a5) const
QString arg(const QString &a1, const QString &a2, const QString &a3, const QString &a4, const QString &a5, const QString &a6) const
QString arg(const QString &a1, const QString &a2, const QString &a3, const QString &a4, const QString &a5, const QString &a6, const QString &a7) const
QString arg(const QString &a1, const QString &a2, const QString &a3, const QString &a4, const QString &a5, const QString &a6, const QString &a7, const QString &a8) const
QString arg(const QString &a1, const QString &a2, const QString &a3, const QString &a4, const QString &a5, const QString &a6, const QString &a7, const QString &a8, const QString &a9) const

基本使用

  • 使用%1-%99占位符来组合数据,每一个%?对应一个arg(...),最多可以添加到%99
代码语言:javascript
复制
QString str = QString("%1+%2=?").arg(1.1).arg(10.1);
qDebug() << str;
输出:1.1+10.1=?
  • 可以不按顺序填充数据:
代码语言:javascript
复制
QString str = QString("%2+%1=?").arg(1.1).arg(10.1);
qDebug() << str;
输出:10.1+1.1=?
  • 当然你还可以重复使用%1-%99
代码语言:javascript
复制
QString str = QString("%2+%1=%1+%2").arg(1.1).arg(10.1);
qDebug() << str;
输出:"10.1+1.1=1.1+10.1"
  • 如果填充的是都是QString类型数据,还可以合并在一个arg写,但最多9个参数
代码语言:javascript
复制
QString str = QString("%1 %2 %3").arg("Hello", "world", "!!!"); /* 这里的字符串隐式转换为QString了 */
qDebug() << str;
输出:"Hello world !!!"

进阶

  • 附加指定的填充数据:
代码语言:javascript
复制
QString arg(const QString &a, int fieldWidth = 0, QChar fillChar = QLatin1Char(' ')) const
  1. a:需要填充的数据
  2. fieldWidth:如果是正值,则fillChar字符依附在a的前面fieldWidth次;如果为负值,则fillChar字符依附在a的后面fieldWidth次。
  3. fillChar:依附在a前/后的字符。

  例:

代码语言:javascript
复制
qDebug() << QString("%1").arg("+", 5, '='); /* '='依附在'+'前5次 */
qDebug() << QString("%1").arg("+", -5, '=');/* '='依附在'+'后5次 */
输出:
====+
+====
  • 转换为对应进制的QString:
代码语言:javascript
复制
QString QString::arg(int a, int fieldWidth = 0, int base = 10, QChar fillChar = QLatin1Char(' ')) const
  1. a:需要填充的整型数据。
  2. base:转换目标为2到36进制之间。

  例:

代码语言:javascript
复制
qDebug() << QString("%1").arg(100, 0, 2); /* 转换为2进制 */
qDebug() << QString("%1").arg(100, 0, 16);/* 转换为16进制 */
输出:
1100100
64
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-01-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Qt君 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • arg接口列表
  • 基本使用
  • 进阶
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档