Tôi tạo ra một cấu trúc trong Swift gọi là RGB, đủ đơn giản:định kiểu UnsafeMutablePointer <Void> để UnsafeMutablePointer <#Struct loại #>
struct PixelRGB {
var r: CUnsignedChar = 0
var g: CUnsignedChar = 0
var b: CUnsignedChar = 0
init(red: CUnsignedChar, green: CUnsignedChar, blue: CUnsignedChar) {
r = red
g = green
b = blue
}
}
Và tôi có một con trỏ var imageData: UnsafeMutablePointer<PixelRGB>!
.
Tôi muốn malloc một số không gian cho con trỏ này, nhưng malloc
lợi nhuận UnsafeMutablePointer<Void>
và tôi không thể cast nó như dưới đây:
imageData = malloc(UInt(dataLength)) as UnsafeMutablePointer<PixelRGB> // 'Void' is not identical to `PixelRGB`
Dù sao để giải quyết này? Cảm ơn sự giúp đỡ của bạn!
Làm thế nào về 'imageData = UnsafeMutablePointer .alloc (dataLength) '? –
matt
@matt Đây phải là câu trả lời. –
Okey-dokey, sẽ thực hiện. – matt