的陣列欲全局和靜態雙值
double[] pMatrix = {50,100,150};
double[][] mMatrix = {{0.5,0.4,0.1}};
在java中我有此作爲類屬性此java代碼翻譯成等於目標c代碼。所以我需要能夠在我的課程中隨處訪問它們。我試圖把這些代碼放在頭文件中,但它不起作用。
任何想法?
的陣列欲全局和靜態雙值
double[] pMatrix = {50,100,150};
double[][] mMatrix = {{0.5,0.4,0.1}};
在java中我有此作爲類屬性此java代碼翻譯成等於目標c代碼。所以我需要能夠在我的課程中隨處訪問它們。我試圖把這些代碼放在頭文件中,但它不起作用。
任何想法?
Objective-C++支持C/C++。所以,你必須在頭文件中定義extern double Matrix[];
,在.mm中定義你的double Matrix[] = {50,100,150};
。此外,您可以將某些類的靜態成員(C++)定義爲相同的值,或者通過靜態公共方法返回它們。
in .h
NSArray *pMatrix;
in .m
pMatrix=[[NSArray alloc] initWithObjects:@"50",@"100",@"150",nil];
如果你只需要其中的類中,你可以聲明爲靜態變量:
// In the .m file:
static double pMatrix[] = {50,100,50};
static double mMatrix[][3] = {{0.5,0.4,0.1}};
@implementation MyClass
- (void)someMethod
{
pMatrix[1] = 50;
}
@end
無需拖放到的Objective-C++ - 這可以在Objective-C很容易做到。 – mipadi 2011-05-31 18:11:07