Map 使用fancy向量的错误声明原型
我有个问题,但我不知道是什么问题。我在编译代码时收到一个错误(涉及一些gnuplot)Map 使用fancy向量的错误声明原型,map,vector,token,Map,Vector,Token,我有个问题,但我不知道是什么问题。我在编译代码时收到一个错误(涉及一些gnuplot) 对于plotMyLines和PlotLines的原型,我收到此错误。任何提示,谢谢 我敢肯定这是真的 不是显示问题的完整最小代码 某个地方的预处理器出了问题: 我可以编译它没问题 这段代码中没有“-”标记 提示要调查预处理器问题,请参阅预处理的输出,例如 gcc -E -o test.cpp.ii .... (etc) 您应该能够准确地看到编译器在代码行中看到的内容(一直向下滚动以识别您自己的代码)
对于plotMyLines和PlotLines的原型,我收到此错误。任何提示,谢谢 我敢肯定这是真的
- 不是显示问题的完整最小代码
- 某个地方的预处理器出了问题:
- 我可以编译它没问题
- 这段代码中没有
“-”标记
gcc -E -o test.cpp.ii .... (etc)
您应该能够准确地看到编译器在代码行中看到的内容(一直向下滚动以识别您自己的代码)
下面的编译就像g上的符咒++
#include <map>
#include <vector>
#include <string>
using namespace std;
typedef struct DATA{
char Label[50]; //title
vector<double> y,SD; //y data point SD sigma
}DATA;
typedef map<int, double> Episode;
typedef map<int, Episode> Stat_run;
double GetAvg(double *Array, int Count, double *stddev);
void wait_for_key();
void plotMyLines(DATA *Data, vector< std::map<int, map<int, double> > > Points, int printsteps, double Y1, double Y2, int episode, int run);
void PlotLines(const char *Outfile, vector<double> x, DATA *Data, int Lines, const string &xlabel, const string &ylabel, double Y1, double Y2);
int main()
{
vector<Stat_run> Points;
Stat_run exp1; Episode eps;
Stat_run exp2; Episode eps2;
}
#包括
#包括
#包括
使用名称空间std;
typedef结构数据{
字符标签[50];//标题
向量y,SD;//y数据点SDσ
}数据;
地图插曲;
typedef map Stat_run;
双GetAvg(双*数组、整数计数、双*stddev);
void wait_for_key();
无效绘图仪线(数据*数据,向量点,整数打印步骤,双Y1,双Y2,整数片段,整数运行);
无效绘图线(常量字符*输出文件、向量x、数据*数据、整型线、常量字符串和xlabel、常量字符串和ylabel、双Y1、双Y2);
int main()
{
矢量点;
统计运行exp1;插曲eps;
统计运行exp2;第二集eps2;
}
使用gcc 4.6.1可以很好地编译代码段。您可能需要添加一些编译器信息。还有,为什么要使用C样式的结构定义?除了函数plotMyLines、PlotLines和我如何输入点向量(测试后我对其有信心)之外,代码中没有任何与此相关的内容。@user1044740:编译器没有那么自信。你不相信编译器有什么好处?哦,我不相信编译器,他是我唯一的朋友:)我使用了给定的命令,发现我定义了Y1和Y2,并将它们用作变量名。我真傻。@user1044740:那么你找到问题了?如果你能接受我的回答,我将不胜感激:)见
gcc -E -o test.cpp.ii .... (etc)
#include <map>
#include <vector>
#include <string>
using namespace std;
typedef struct DATA{
char Label[50]; //title
vector<double> y,SD; //y data point SD sigma
}DATA;
typedef map<int, double> Episode;
typedef map<int, Episode> Stat_run;
double GetAvg(double *Array, int Count, double *stddev);
void wait_for_key();
void plotMyLines(DATA *Data, vector< std::map<int, map<int, double> > > Points, int printsteps, double Y1, double Y2, int episode, int run);
void PlotLines(const char *Outfile, vector<double> x, DATA *Data, int Lines, const string &xlabel, const string &ylabel, double Y1, double Y2);
int main()
{
vector<Stat_run> Points;
Stat_run exp1; Episode eps;
Stat_run exp2; Episode eps2;
}