2009-07-17 69 views
0

但是在這種情況下,我通常使用流格式化東西?我直到運行時才知道格式。C++運行時字符串格式

我希望能夠採取如下格式字符串:
你好{0}!您上次登錄的日期是{1,日期:年/月/日}。
...並在變量「Fire Lancer」和1247859223中輸入,最後輸入以下格式化的字符串:
Hello Fire Lancer!您上次登錄時間爲17/07/09。

在其他語言中,我使用的是支持這種類型的東西,例如pythons格式字符串方法,但是在C++中似乎沒有任何這樣的功能,接受那些不是很安全的C打印方法。

此外,這是一個高性能的程序,所以無論我使用什麼解決方案需要解析格式化字符串一次,並將其存儲(例如mayby一個Parse方法返回一個FormatString對象與格式(字符串)方法),而不是重新分析每個format方法被調用時字符串...

+3

您的高性能程序能夠快速迎合用戶? – GManNickG 2009-07-17 19:42:49

回答

2

您的格式字符串看起來非常像ICU MessageFormat中使用的格式字符串。你有沒有考慮使用它?