处理期望内存大小(以字节为单位)的 CGo 函数的规范方法是什么?

我在玩 OpenGL 和 Go。它大多非常直观,但有一些尴尬的界面问题。glBufferData 的第二个参数应该是内存中缓冲区的大小。


C.glBufferData(C.GLenum(target), C.GLsizeiptr(size), ptr(data), C.GLenum(usage))

在缓冲区包含 32 位浮点数的情况下,每个元素将占用 4 个字节,因此对于第二个参数,我可以执行以下操作:


sizeofFloat := 4

size := sizeofFloat * len(buffer)

C.glBufferData(C.GLenum(target), C.GLsizeiptr(size), ptr(data), C.GLenum(usage))

除了硬编码之外,是否有更好的方法来获取内存中类型的大小?


小唯快跑啊
浏览 166回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go