问题描述
- C中int数组在类接口中的问题
- 我希望能在类接口中定义一个作为实体变量的cInt数组,这样我就能通过任意方法访问它。
@interface aVCofMine : UIViewController{ int[] myArray;}
还有
@interface aVCofMine : UIViewController{ int myArray[];}
但是完全没用,不知道是不是不能这样定义啊?要是能定义怎么定义?
谢谢。
解决方案
C数组需要动态分配和调整尺寸:
@interface AVCOfMine : NSViewController { int myArray[5];}@end
或者:
@interface AVCOfMine : NSViewController { int *myArray;}@end@implementation AVCOfMine- (void)viewDidLoad { myArray = malloc(sizeof(int) * 5);}- (void)dealloc { free(myArray); [super dealloc]; // 如果没有ARC才能用这行}@end
第一段代码是保持数组的规模统一,第二段代码是在运行期间选择规模。
解决方案二:
使用:
@interface aVCofMine : UIViewController{ int *myArray;}
然后在实现代码中,分配array内存:
myArray = malloc(sizeof(int) * numberOfElements);
释放:free(myArray);
时间: 2024-12-03 01:38:06