我已经完成了研究,但我根本无法理解这条信息。我发现的一切似乎都是编译器本身的错误。我还在某处读到“上下文信息不足,无法确定类型”不是有用的信息。
我的问题:是否有人知道此编译错误消息的含义?
我知道这个问题可能是特定于代码的。我的代码仅声明了一个全局匿名结构,然后一旦它尝试在函数中访问它,我就会收到此错误(或者我已经对其进行了评估)。
编辑:我得到了我的代码来编译!- 但我仍然不知道错误是什么意思,所以我会留下这个问题。
编辑:这是我的代码,据我认为很重要:
typedef ofstream::pos_type ofilepos;
struct stack // stack is my own stack data-structure
{
// ...
// int L; struct N *l;
stack(): L(0), l(NULL) {}
}
// ...
struct
{
const char* zero;
stack<ofilepos> chunks; // it was 'chunks();' with (), and it didn't work
} _fileext = {"\0\0\0"};
// ...
ofstream& write_stack_pushsize(ofstream& f)
{
_fileext.chunks.push(new ofilepos(f.tellp()));
f.write(_fileext.zero,4);
return f;
}
我认为这可能是因为我在结构声明中调用了一个构造函数,而不是稍后......或者其他什么......这可能是 C++03 中的一个错误。