我已經寫了一個結構體和類,我想知道如何使用從文本文件中讀取的值來調整它們的大小。這裏是結構和類:如何調整結構或類成員的矢量大小?
typedef struct Chrom // creating the chrom structure
{
vector<vector <short int> > bit;
vector<vector <short int> > WaitingTime; //this is wij in the model
vector<vector <short int> > WaitingJob;//this is wj in the model, sigma wij must be equal to wj for each job J.
vector<vector <short int> > StartTime;
short int FinishTime;// finish time of each job in each machine
int fit;
} chrom;
在程序中,我讀了一個數字是m。 但在程序中當我嘗試使用chrom.ShortTime.resize(m)
。它給了我一個錯誤。即使我試圖寫這樣的類:
class ProblemConstraint{
short int Jobs, Machines;
public:
vector <short int> Processing;
vector <short int> t1;
vector <short int> t2;
short int M;
short int W;
void set_values(int, int);
void resize(){
ProblemConstraint.Processing.resize(Machines);
}
}ProblemConstraint;
但我不能調整類中的向量的大小。有關如何在程序中的類或結構中調整矢量大小的任何建議?
你什麼錯誤? – NathanOliver
「typedef struct Chrom」 - 你不需要在C++中使用'typedef',這是一個C-ISM。 –
可能的重複 - https://stackoverflow.com/questions/37229215/how-to-resize-a-2d-vector-of-struct – JazzSoft