小编Nel*_*ius的帖子

当修改基础OpenGL状态时,我应该声明方法const吗?

以下类封装了缓冲区的OpenGL名称,并提供了一些用于更改缓冲区状态的方法:

class BufferObject {
    public:
        explicit BufferObject( GLenum type );
        virtual ~BufferObject();

        // some methods omitted

        void    dataStore( GLsizeiptr size, const GLvoid* data, int usage );
        void*   mapBufferRange( GLintptr offset, GLsizeiptr length, int accessFlag );
        void    unmapBuffer() const;
    private:
        GLuint object_;
};
Run Code Online (Sandbox Code Playgroud)

这些方法都没有改变BufferObject对象的状态,所以它们都可以声明const.然而,dataStoremapBufferRange这两个呼叫的OpenGL方法,其中(改变GPU上的对象的状态glBufferDataglMapBufferRange分别).我想声明它们,但没有const表明它们正在修改GPU上的状态.

在这种情况下,最佳做法是什么?

c++ opengl methods const

6
推荐指数
1
解决办法
143
查看次数

Lua文件输出:-1.#IO?

我用Lua将数字打印到一个文件中,有时候不是数字,而是显示-1.#IO.这是什么意思?

违规代码在以下要点中.

https://gist.github.com/Nelarius/6247636

而且违规数字位于最底层:meanPrice.包含的值存储在Commodity表中,稍后Commodity表将值记录到文件中.

lua numbers file output

3
推荐指数
2
解决办法
3023
查看次数

标签 统计

c++ ×1

const ×1

file ×1

lua ×1

methods ×1

numbers ×1

opengl ×1

output ×1