2011-05-31 70 views
0

的陣列欲全局和靜態雙值

double[] pMatrix = {50,100,150}; 

double[][] mMatrix = {{0.5,0.4,0.1}}; 

在java中我有此作爲類屬性此java代碼翻譯成等於目標c代碼。所以我需要能夠在我的課程中隨處訪問它們。我試圖把這些代碼放在頭文件中,但它不起作用。

任何想法?

回答

1

Objective-C++支持C/C++。所以,你必須在頭文件中定義extern double Matrix[];,在.mm中定義你的double Matrix[] = {50,100,150};。此外,您可以將某些類的靜態成員(C++)定義爲相同的值,或者通過靜態公共方法返回它們。

+0

無需拖放到的Objective-C++ - 這可以在Objective-C很容易做到。 – mipadi 2011-05-31 18:11:07

1
in .h 
NSArray *pMatrix; 
in .m 
pMatrix=[[NSArray alloc] initWithObjects:@"50",@"100",@"150",nil]; 
0

如果你只需要其中的類中,你可以聲明爲靜態變量:

// 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