在objective-c中,如果你有一个带有变量参数的函数,你如何确保格式说明符与传递给functoin的实际参数一致?
Lee*_*Lee 26
这是通过使用NS_FORMAT_FUNCTION宏来完成的.
假设您有这样的函数:
LOG(int level,NSString *format,...);
Run Code Online (Sandbox Code Playgroud)
级别是日志级别,而格式包含格式字符串,变量参数是格式字符串的参数.
为了确保在编译时参数的计数和类型是正确的,可以将函数定义为:
LOG(int level,NSString *format,...) NS_FORMAT_FUNCTION(2,3);
Run Code Online (Sandbox Code Playgroud)
请注意,这里的2和3指的是格式字符串的参数列表中的位置和变量参数列表的开头.
| 归档时间: |
|
| 查看次数: |
3405 次 |
| 最近记录: |