我对术语不是很好。.这是我的代码:
enum {
LoggerLogNone = 0,
LoggerLogMessages = 1 << 0,
LoggerLogErrors = 1 << 1
};
typedef NSUInteger LoggerLogs;
我想做的是在确定是否应记录时在逻辑中使用
LoggerLogs
。因此,在我的log:(NSString *)message
中,我希望仅当用户设置LoggerLogMessages
时才记录日志;对于logError:(NSString *)error
,我希望它仅在用户设置LoggerLogErrors
时才记录日志。我知道如何设置它们:
LoggerLogs logs = LoggerLogMessages | LoggerLogErrors;
我不知道该怎么做是检查是否已检查
LoggerLogMessages
或LoggerLogErrors
。任何帮助将不胜感激。我敢肯定,这里有答案,但是由于我不知道要使用的术语,因此很难搜索> _ <
最佳答案
- (void)log:(NSString *)message {
if (logs & LoggerLogMessages) {
NSLog(@"message: %@", message);
}
}
- (void)logError:(NSString *)error {
if (logs & LoggerLogErrors) {
NSLog(@"error: %@", error);
}
}
<<
和&
都称为按位运算符。如果您使用googlet bitwise operators C
,则会找到很多说明。