我想這個Objective-C代碼轉換爲迅速,但似乎無法推測出來:NSMutableArray。 Objective-C的到SWIFT代碼
@implementation MultiplayerNetworking {
uint32_t _ourRandomNumber;
GameState _gameState;
BOOL _isPlayer1, _receivedAllRandomNumbers;
NSMutableArray *_orderOfPlayers;
#define playerIdKey @"PlayerId"
#define randomNumberKey @"randomNumber"
- (id)init
{
if (self = [super init]) {
_ourRandomNumber = arc4random();
_gameState = kGameStateWaitingForMatch;
_orderOfPlayers = [NSMutableArray array];
[_orderOfPlayers addObject:@{playerIdKey : [GKLocalPlayer localPlayer].playerID, randomNumberKey : @(_ourRandomNumber)}];
}
return self;
}
};
這就是我想我會是這樣,但我我一點都不確定,所以我會很感激在這裏的幫助。
class MultiplayerNetworking {
var _ourRandomNumber = uint32_t()
var _gameState = GameState()
var isPlayer1 = false
var receivedAllRandomNumbers = false
var orderOfPlayers = [AnyObject]()
let playerIdKey = "PlayerId"
let randomNumberKey = "randomNumber"
override init() {
super.init()
self.ourRandomNumber = arc4random()
self.gameState = kGameStateWaitingForMatch
self.orderOfPlayers = [AnyObject]()
orderOfPlayers.append([playerIdKey: GKLocalPlayer.localPlayer().playerID, randomNumberKey: ourRandomNumber])
}
}
但它給了我一些錯誤,有很多:
我用這個轉換器:objectivec2swift.com,因爲我有一個Objective-C的
基本上在Swift中沒有以下劃線開頭的隱式支持實例變量。刪除兩個主要的下劃線。 'uint32_t'是'UInt32' – vadian