Qt数据结构-QString二:QString的arg能不能像Python的format一样使用
常规QString拼接字符串我们是这样写的
QString s = QString("My name is %1, age %2").arg("zhangsan").arg("18"); qDebug() << s; // "My name is zhangsan,age 18"
Python的format是这样写的
s = "My name is {name}, age {age}".format(name="zhangsan", age=18) print(s) # My name is zhangsan, age 18
在Qt中arg跟两三个参数还好,没啥问题,可是如果跟一二十个参数,咋整。顺序写错了,那就完蛋了。所以我在想是否可以像Python一样可以通过变量名称来赋值
然后就有了下面的这种写法,感觉还不错,大家就当玩玩。
QString s = "My name is {name}, age {age}"; s.replace("{name}", "zhangsan"); s.replace("{age}", "18"); qDebug() << s; // "My name is zhangsan,age 18"
别说,还挺好使。