- 1
QString("a=%1 b=%2").arg("[%1]").arg("Shit happens")
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+24
QString("a=%1 b=%2").arg("[%1]").arg("Shit happens")
Вы думаете, что результат будет "a=[%1] b=Shit happens"?
Как бы не так! "a=[Shit happens] b=%2".
Причем эта "фича" вполне документирована. Но документирована она не в самом первом описании arg'а, а только в arg(const QString &a1, const QString &a2), в доку по которому я естественно никогда не заглядывал...
UPD: правильным вариантом будет QString("a=%1 b=%2").arg("[%1]", "Shit happens"), но тогда мы лишаемся поддержки форматирования, да и таким образом можно засунуть максимум 10 аргументов.
LispGovno 13.11.2012 07:43 # 0
После того как ты спросил сразу стало ясно что тпм будет.
guest 13.11.2012 08:38 # −6
absolut 13.11.2012 13:04 # +8
Steve_Brown 13.11.2012 09:53 # +1
guest 24.11.2012 20:22 # +1