gpt4 book ai didi

iphone - 尝试将 NSUInteger 与枚举一起使用 (<<)

转载 作者:太空宇宙 更新时间:2023-11-04 01:38:56 26 4
gpt4 key购买 nike

我不太擅长术语..这是我的代码:

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;

我不知道该怎么做的是检查是否 LoggerLogMessagesLoggerLogErrors被选中。任何帮助将不胜感激。我确定这在某处得到了回答,但由于我不知道要使用的术语,所以很难搜索 >_<

最佳答案

- (void)log:(NSString *)message {
if (logs & LoggerLogMessages) {
NSLog(@"message: %@", message);
}
}

- (void)logError:(NSString *)error {
if (logs & LoggerLogErrors) {
NSLog(@"error: %@", error);
}
}

两者都是 <<&被称为按位运算符。如果你谷歌 bitwise operators C ,你会发现很多解释。

关于iphone - 尝试将 NSUInteger 与枚举一起使用 (<<),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9346781/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com