Jem*_*Jem 4 constants equals objective-c string-comparison nsstring
我发现有关设置NSString常量的讨论让我按以下方式编写代码:
.h文件:
extern NSString * const kSectionHeaders;
Run Code Online (Sandbox Code Playgroud)
.m文件:
NSString * const kSectionHeaders = @"header";
Run Code Online (Sandbox Code Playgroud)
当程序运行时,它必须根据一系列NSString常量测试文本文件中的单词.
我读取内存比较应该在设置如上所述的功能时起作用:
if (property == kSectionHeaders) {...}
Run Code Online (Sandbox Code Playgroud)
不起作用:(以下工作,但它被描述为一个糟糕的解决方案(较慢,还有什么?):
if ([property isEqualToString:kSectionHeaders]){...}
Run Code Online (Sandbox Code Playgroud)
我觉得我做错了什么.但看不出来的是什么!请帮忙:-)谢谢!J.
记住变量名只是指向内存中对象的指针.
该==操作比较指针.除非它在内存中比较完全相同的对象,否则它不会成立.
isEqualToString:是你最好的选择.不要太担心速度.这些设备足够快,可以在眨眼间进行比较.真正花费不可思议时间的事情是在屏幕上绘图并从磁盘读取.
| 归档时间: |
|
| 查看次数: |
2036 次 |
| 最近记录: |