-2
我在第19-23行解決C:2059錯誤時遇到問題。我確信我創建的矢量數據類型是正確的。我哪裏錯了?C2059:語法錯誤:常量
調試器輸出: C:\ Qt的\工具\ QtCreator \ BIN \ Neutropenia_Application \ classifier.h:21:錯誤:C2059:語法錯誤: '常量'
#ifndef CLASSIFIER_H
#define CLASSIFIER_H
#include "patient_data.h"
#include <QObject>
#include <vector>
#include <stdlib.h>
class Classifier : public QObject
{
Q_OBJECT
public:
explicit Classifier(QObject *parent = 0);
~Classifier();
void classify(std::vector<patient_data>data, patient_data i);
struct CreateSDTable
{
std::vector<long> sum(3); // C2509 error //element 0 = Tumor, element 1 = Stage, element 2 = Adjuvant
std::vector<long> mean(3); // C2509 error
std::vector<long> error(3); // C2509 error
std::vector<long> SDL(3); // C2509 error
std::vector<long> SD(3); // C2509 error
};
CreateSDTable CurrentvsNeutropenic;
CreateSDTable CurrentvsNonNeutropenic;
private:
/*
std::vector<int> calculatesums(std::vector<patient_data> data, patient_data i);
std::vector<long> calculatemean(std::vector<int>validpatients, CreateSDTable Neut, CreateSDTable NonNeut);
std::vector<long>calculateerror(patient_data d, std::vector<int>m);
std::vector<long>calculatSDL(int nvp, CreateSDTable CVN, CreateSDTable CVsNN);
std::vector<int> NumofValidPatients(std::vector<patient_data>x);
//void classify(std::vector<patient_data>data, patient_data i);
*/
signals:
public slots:
};
#endif // CLASSIFIER_H
*您可以在* C++ 11的小的調整'的std ::矢量總和=標準::矢量(3);' –
user657267
2014-12-10 23:56:39
謝謝傑伊·米勒,謝謝user657267,我不會猜到的。 – user3255175 2014-12-11 00:02:25
C++ 11中的另一種方法是'std :: vector sum {0,0,0};'(這些數字是每個成員的初始值,列表的長度給出了該向量的大小) –
2014-12-11 01:07:27