2011-11-14 6 views
0

私は問題がありますが、それは何か分かりません。コードをコンパイルするとエラーが発生します(いくつかのgnuplotが含まれています)。ファンシーベクトルのエラー宣言プロトタイプ

#include <iostream> 
#include <fstream> 
#include <vector> 
#include <map> 
#include <string> 
#include <math.h> 
#include "gnuplot_i.hpp" 

    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; 
} 

私は自分のコードの大部分を削除しました。目的は、結果をフォーマットしてプロット関数に送ることです。私はシンプルに見えるエラーを受けますが、2時間のテストの後、どこに問題があるのか​​わかりません。エラー:

error: expected ‘,’ or ‘...’ before ‘-’ token 

plotMyLinesとPlotLinesのプロトタイプでこのエラーが発生します。どんなヒントもありがとう!

+0

スニペットはあなたには、いくつかのコンパイラの情報を追加したい場合がありますGCC 4.6.1でコンパイル罰金などは、以下のコンパイル。また、なぜCスタイルの構造体定義を使用していますか? – pmr

答えて

0

私はプリプロセッサの混乱アップがどこかにあり、これが問題

  • を表示するための完全な最小限のコード

    • ではないかなり確信している:
      • 私は何の問題
      • それをコンパイルすることはできません
      • このコードスニペットのどこにでも'-' tokenはありません。

    例えば、前処理の出力を参照して、プリプロセッサの問題を調査するためのヒント

    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; 
    } 
    
  • +0

    関数plotMyLines、PlotLines、および(テスト後に私が自信を持っている)Pointsベクトルをどのように供給するかを除いて、コードには何も接続されていません。 –

    +0

    @ user1044740:コンパイラはそれほど自信がありません。あなたはコンパイラを信じないことで何を得ているのですか? – sehe

    +0

    ああ私はコンパイラを信じていない、彼は私の唯一の友人です:) 私は与えられたコマンドを使用して、#Y1とY2を定義し、それらを変数名として使用することがわかりました。愚かな私。 –

    関連する問題