我的Xcode项目有问题.
我有这些线:
typedef struct
{
NSString *escapeSequence;
unichar uchar;
}
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
ARC禁止结构或联合中的Objective-C对象.
我该如何解决?
我似乎无法找到这是如何违反ARC的,但我很乐意学习.
我似乎无法找到一种方法来设置我创建的静态int,以便为保存到持久内存的每个对象分配唯一ID.下面给出了一个'no setter方法'setIdGen'用于赋值给属性.
-(void)viewDidLoad
{
PlayerMenuController.idGen = [[NSUserDefaults standardUserDefaults] floatForKey:@"idGen"];
}
Run Code Online (Sandbox Code Playgroud)
除了以上内容之外,我还尝试创建一个静态setIdGen方法,该方法将返回错误的访问错误,并使用自己的set方法创建NSIntegers.当我尝试使用=分配它时,我的静态NSMutableArray给出了相同的错误,但在使用setArray时工作正常.
idGen方法:
+ (int) idGen
{
/*static int idGen;
if(!idGen)
{
idGen = 0;
NSLog(@"idGen reset");
}*/
return self.idGen;
}
Run Code Online (Sandbox Code Playgroud) 我计划定义一个类,它的属性包含x/y网格的坐标.但是,我不确定采用这种设计的"最佳"方法.这是一个非常简单的问题,我只是想正确地做到这一点并且有正当理由!
一种解决方案是在对象内具有两个属性,类型' int',一个用于x,一个用于y.
另一个是定义包含x/y值的两个int的typedef结构并命名它<ClassPrefix>Coordinate.类似于CGSize?
有没有其他/更好的方法来做到这一点?哪个更受欢迎?不知道如何证明两种方式的合理性.
谢谢!
蒂姆.