Tôi đang cố gắng lưu trữ c-float array
trong một NSDictionary
để sử dụng sau này.
Ban đầu tôi đã sử dụng một số NSArray
để lưu trữ C-data nhưng NSArray
là để làm chậm ý định của mình.Lưu trữ một mảng float C trong một NSDictionary
Tôi đang sử dụng đoạn mã sau để bọc các mảng trong NSDictionary:
[self.m_morphPositions setObject:[NSValue valueWithBytes:&positionBuff objCType:@encode(float[(self.m_countVertices * 3)])] forKey:fourCC];
Và lấy mảng C-phao sử dụng:
float posMorphs[(self.m_countVertices*3)];
NSValue *posValues = [self.m_morphPositions objectForKey:name];
[posValues getValue:&posMorphs];
Khi tôi retireve mảng , các giá trị đều được đặt thành 0.0 cho mỗi chỉ mục sai.
Làm cách nào để khắc phục sự cố này?
Nó hoạt động với mảng (xem câu trả lời dưới đây). Nhưng 'NSData' có thể là giải pháp tốt hơn. –
Đã hoạt động hoàn hảo. Cảm ơn bạn rất nhiều – samb90