C++:语法错误C2061:标识符
C++: Syntax error C2061: Identifier
我有一个非常奇怪的问题。
在我的标题"compier.h"中,我有以下原型:
void WriteMap(FILE *outfile,clsMapping &uMap);
在cpp中,我这样声明:
void CCompiler::WriteMap(FILE *outfile,clsMapping &uMap)
{
int iSize = uMap.Content().size();
fwrite(&iSize,sizeof(int),1,outfile);
int iOffset=uMap.iOffset;
fwrite(&iOffset,sizeof(int),1,outfile);
vector<udtMapping>::iterator it = uMap.Content().begin();
int n = 0;
for (;it != uMap.Content().end(); ++it)
{
fwrite( &it->ByteStart, sizeof(int), 1, outfile);
fwrite( &it->ByteCount, sizeof(int), 1, outfile);
}
}
编译器告诉我"语法错误C2061:标识符'clsMapping'。它告诉我:
声明与"void CCompiler::WriteMap(FILE*outfile,&uMap("(在"m:\app\compiler.h"的第30行声明(不兼容。
clsMapping在标头"structures.h"中声明:
class clsMapping
{
private:
vector<udtMapping> m_content;
protected:
public:
vector<udtMapping> &Content();
void Add(int i1, int i2);
int iOffset;
void FeedFeaturesFromMap(udtFeatures &uFeatures,int uIndex);
};
在编译器.h中,我已经说明了
#include "structures.h"
我是忽略了一个打字错误,还是更严重的问题?
谢谢你的帮助。
#include "structures.h"
必须同时添加到cpp和h文件中。
相关文章:
- 在C++中,是否可以基于给定的标识符创建基类的新实例,反之亦然
- #ifdef和未声明的标识符
- 主.cpp(12):错误 C2061:语法错误:标识符"vec1"
- 如何修复可视化工作室中的"C2061语法错误标识符"堆栈?
- 错误 C2061:语法错误:标识符'_bstr_t'
- C++结构错误 - 错误 C2061:语法错误:标识符
- C2061 错误:"标识符",但我包含标头?
- C2061:语法错误:qtypetraits.h 中的标识符'L'
- C++自定义头文件 - 语法错误 C2061:标识符
- 错误 C2061:语法错误:标识符'map'
- boost::p roperty_tree 编译错误(错误 C2061:语法错误:标识符"p")
- C++错误 C2061:语法错误:标识符'FILE' jpeglib 问题?
- 错误 C2061:语法错误:标识符'string'
- 错误 C2061:语法错误:使用 cURL 时标识符'acosf'
- C++错误C2061:语法错误:标识符
- 错误 C2061:语法错误:标识符"istream"
- 语法错误:标识符'string'错误 C2061
- C++:语法错误C2061:标识符
- C2061:语法错误:标识符'string' - 行为异常
- 错误 C2061:语法错误:标识符,但已包含头文件