小编w4e*_*wet的帖子

glDrawArrays如何知道要绘制什么?

我正在关注一些初学者OpenGL教程,对这段代码感到有些困惑:

glBindBuffer(GL_ARRAY_BUFFER, vertexBufferObject); //Bind GL_ARRAY_BUFFER to our handle
glEnableVertexAttribArray(0); //?
glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 0, 0); //Information about the array, 3 points for each vertex, using the float type, don't normalize, no stepping, and an offset of 0. I don't know what the first parameter does however, and how does this function know which array to deal with (does it always assume we're talking about GL_ARRAY_BUFFER?

glDrawArrays(GL_POINTS, 0, 1); //Draw the vertices, once again how does this know which vertices …
Run Code Online (Sandbox Code Playgroud)

opengl graphics rendering vertex

49
推荐指数
2
解决办法
4万
查看次数

C - 反转一个数字

我在Linux上用C编码,我需要反转一个数字.(EG:12345将变成54321),我只是将它转换为使用itoa的字符串然后反转,因为它可能更容易使用字符串操作,但事实证明itoa是非标准的并且不包括在内在gcc.有没有办法在十进制数字上做二进制旋转样式的事情,如果不是我应该采取什么方法?

c algorithm reverse

5
推荐指数
1
解决办法
9110
查看次数

C++迭代器运算符优先级问题*it.method()vs(*it).method()vs it-> method()

此代码将无法编译:

for(vector<Box>::iterator it = shapes.end(); it >= shapes.begin(); --it){
    *it.update(1,1);
    *it.draw();
}
Run Code Online (Sandbox Code Playgroud)

它声称:

main.cpp:80:17: error: ‘std::vector<Box>::iterator’ has no member named ‘update’
main.cpp:81:17: error: ‘std::vector<Box>::iterator’ has no member named ‘draw’
Run Code Online (Sandbox Code Playgroud)

但是AFAIK,那个代码没有尝试调用vector :: iterator.draw(),它取消引用迭代器,它应该给我一个我的类框的对象,它有这些方法.我做错了什么,抱歉这个糟糕的头衔.

c++ iterator

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

在C++中,是否可以在初始化时覆盖虚拟方法?

当我编写java时,可以在初始化类时覆盖抽象方法.我觉得它看起来像这样:

AbstractClass object = new AbstractClass(){
   void inheritedMethod(){
      ...
   }
};
Run Code Online (Sandbox Code Playgroud)

这可以用C++做,如果是这样,语法是什么?

c++ oop initialization

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

为什么分成2行时不起作用?

这一行:

std::auto_ptr<Ogre::Root> lRoot (new Ogre::Root(lConfigFileName, lPluginsFileName, lLogFileName));
Run Code Online (Sandbox Code Playgroud)

工作良好.但是,当我这样做时,它不会:

std::auto_ptr<Ogre::Root> lRoot;
lRoot (new Ogre::Root(lConfigFileName, lPluginsFileName, lLogFileName));
Run Code Online (Sandbox Code Playgroud)

它报道:error: no match for call to ‘(std::auto_ptr<Ogre::Root>) (Ogre::Root*)’ 就我的有限理解而言,这些不应该做同样的事情吗?还是我错过了一些重要的东西?

c++

0
推荐指数
2
解决办法
77
查看次数

Php - 检测发布的表格

我有一个页面,可能会出现多个表单.有没有在php(某种形式的系统)中区分这些形式?

html php forms post

0
推荐指数
2
解决办法
509
查看次数

字符串文字如何等于char*,以及如何将字符串作为参数

我在几段代码中看到了一个声明为char*的字符串.这是如何工作的,当然它是指向单个字符的指针,而不是构成字符串的字符数组.如果我希望将字符串输入带到一个像这样调用的方法:

theMethod("This is a string literal");
Run Code Online (Sandbox Code Playgroud)

参数应该是什么数据类型?

c string pointers

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

标签 统计

c++ ×3

c ×2

algorithm ×1

forms ×1

graphics ×1

html ×1

initialization ×1

iterator ×1

oop ×1

opengl ×1

php ×1

pointers ×1

post ×1

rendering ×1

reverse ×1

string ×1

vertex ×1