小编jor*_*der的帖子

如何获取临时文件名?

我看过一些与我的问题相关的帖子,但没有一个完全解决它.我需要在标准临时目录中创建一个文件,在我写完文件后,将其移动到其他位置.这个想法是文件在下载时被认为是临时的,在下载完成后是永久性的.

我是通过调用mkstemptmpfile来尝试这个,然后在我写完之后重命名.但是,我需要文件的完整路径来调用重命名,显然从文件描述符(由mkstemp返回)或FILE*(由tmpfile返回)获取文件名不是一个简单的过程.它可以做到,但它并不优雅.

是否有系统调用将创建临时文件并为我提供名称?我知道mktemp和相关的调用,但它们要么不保证是唯一的,要么被弃用.或者也许有更好的方法来完成创建,写入和移动临时文件.

c unix temporary-files temporary-directory

15
推荐指数
1
解决办法
9186
查看次数

OpenGL 顶点数组对象存储顶点缓冲区名称和索引,还是仅存储索引?

创建时,VAO 是否仅跟踪 VBO 索引(通过glBindVertexBuffer),或者还跟踪哪些 VBO 名称绑定到这些索引?如果我使用glVertexAttribBinding指定绑定索引,例如 0,我可以在绘制调用之前将不同的 VBO 绑定到索引 0 并让它使用该 VBO 的内容,还是始终使用任何 VBO创建 VAO 时是否绑定到索引 0?

我问这个问题是因为我发现很多例子都在调用glVertexAttribFormatglVertexAttribBinding之前调用glBindVertexBuffer,如果 VAO 仅跟踪索引(因为绑定索引在 中给出),则不需要调用glVertexAttribBinding

opengl vbo opengl-4 vao

3
推荐指数
1
解决办法
1468
查看次数

在运行之前,如何通过lua C API为一大块lua代码设置环境表?

我的游戏引擎的界面是使用标记语言和Lua构建的,类似于HTML和javascript.因此,可视元素将具有UI事件的处理程序,例如鼠标移动或单击,并且每次运行处理程序时,引擎将检查它是否已编译,如果不是,则将通过编译它luaL_loadstring.Handers可以通过元素复制或赋值(this.onclick = that.onclick)共享.

如何在运行之前设置一大块lua代码的环境?我们的想法是将元素和特定于事件的数据提供给块,并且还链接到父UI元素的环境. 删除了Lua 5.2更改lua_setfenv,因此我不确定如何完成此操作.该函数lua_load允许指定环境,但似乎只用于加载代码而不运行它.

c c++ lua lua-api

2
推荐指数
1
解决办法
2645
查看次数

标签 统计

c ×2

c++ ×1

lua ×1

lua-api ×1

opengl ×1

opengl-4 ×1

temporary-directory ×1

temporary-files ×1

unix ×1

vao ×1

vbo ×1