我不确定标题是否可以理解。我想要的是制作一个像NSLog方法一样有效的方法并结合以下几行?
这就是我现在所拥有的:
NSString *out = [NSString stringWithFormat:@"something %d,%d",1,2];
[self showLog:out];
这样的方法在定义中会如何?
- (void) showLog:(NSString *) data;
谢谢
答案 0 :(得分:7)
在界面中,
-(void) showLog: (NSString*) formatSpecifier, ...;
在实施中
-(void) showLog: (NSString*) formatSpecifier, ...
{
va_list formatArgs;
va_start(formatArgs, formatSpecifier);
NSString* logMessage = [[NSString alloc] initWithFormat: formatSpecifier arguments: formatArgs];
va_end(formatArgs);
// Do want you need to to output the string.
[logMessage release];
}
答案 1 :(得分:2)
https://developer.apple.com/library/content/qa/qa1405/_index.html
- (void) showLog: (id) data, ...;
答案 2 :(得分:1)
这样的东西?
NSString *out = [NSString stringWithFormat:@"something %d,%d",1,2];
[self showLog:out];
- (void)showLog:(NSString*)data{
NSLog(@"%@", data);
}
如果您需要,请寻求更多帮助:)
如果我误解了您的需要,请随时澄清您的问题;)
祝你好运 克里斯蒂安
答案 3 :(得分:0)
如果你想创建一个以String作为参数的方法,那么使用这段代码它会对你有帮助。
#import <Foundation/Foundation.h>
@interface SampleClass:NSObject
//Method declaration
- (void) functn:(NSString*)str;
@end
@implementation SampleClass
//<<<<<<<<<<-- Function to print UserName -->>>>>>>>>>>>>>>
- (void)functn:(NSString*)str
{
NSLog(@"Your Name is %@",str);
}
@end
int main ()
{
SampleClass *sampleClass = [[SampleClass alloc]init];
/* calling a method to get max value */
NSString *yourName=@"Pir fahim shah";
[sampleClass functn:yourName];
return 0;
}