我昨天发了一篇关于这个的帖子,但这是一个完全不同的问题。不确定我是应该提出一个新问题,还是只回答旧问题,但这里是。
基本上我正在设置我的结构 vector 数组如下..
class Debugger : public Ogre::SimpleRenderable
{
struct DebugVertex
{
Ogre::Vector3 v;
unsigned int color;
};
typedef std::vector<DebugVertex> Buffer;
protected:
Buffer mLineBuffer;
问题出现在代码中,例如...
mLineBuffer.reserve(128);报告它不是 Debugger::DebugVertex 的成员。这适用于所有 vector 操作,例如 reserve、empty、ptr、size 等。它们都存在,但它正在结构中寻找它们。我应该如何访问这些?
最佳答案
您的 typedef 使用私有(private)结构,Debugger 类之外的任何代码尝试使用它都不会编译。
std::vector 不是你类(class)的一部分......
要么将 std::vector
关于c++ - 关于结构 vector 数组的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3777609/