簡體   English   中英

制作我自己的printf功能?

[英]Making my own printf function?

我想知道我怎么能做到這一點。 我對N個論點部分感到困惑:

printf("Hello, I'm %i years old and my mom is %i .",me.age(),mom.age());

我想創建一個函數,它將采用這樣的格式化字符串並返回一個std字符串。

N個參數部分是如何完成的?

printf是一個可變函數; 您可以使用<stdarg.h>提供的工具實現自己的可變參數函數。

在C ++中,應盡可能避免使用可變參數函數。 它們可以作為參數接受的類型非常有限,並且它們不是類型安全的。 C ++ 0x為C ++添加了可變參數模板; 一旦對此功能的支持很普遍,您將能夠編寫類型安全的可變參數函數。

在此期間,最好使用其他一些類型安全的方法。 例如, Boost.Format重載%運算符以執行格式化。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM