[問題] 如何將vector 設為類別的private成員
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VC++
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
無
問題(Question):
想請問,如何將vector設為class內private成員?
預期的正確結果(Expected Output):
希望能讀到類別內的vector
錯誤結果(Wrong Output):
不合法的間接取值
指向這段
double Gaussian::get(int i) {
return *mean[i];
}
程式碼(Code):(請善用置底文網頁, 記得排版)
Gaussian.h
class Gaussian
{
public:
Gaussian(void);
Gaussian(int);
~Gaussian(void);
void MGD(double*,const int,const double,const double,Gaussian*);
double get(int);
private:
double w,*mean,deal,alpha,rho;
int k;
};
Gaussian.cpp
#include "stdafx.h"
#include "Gaussian.h"
#include <vector>
#include <iostream>
using namespace std;
Gaussian::Gaussian(void){
vector<double> mean(2,10);
//vector<double> w(2);
//vector<double> deal(2);
}
Gaussian::~Gaussian(void){}
double Gaussian::get(int i) {
return *mean[i];
}
補充說明(Supplement):
麻煩各位幫忙,我用很久還是搞不定= ="
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.255.103.122
→
01/21 22:54, , 1F
01/21 22:54, 1F
→
01/21 22:56, , 2F
01/21 22:56, 2F
應該是double吧...
可是在.h時,好像不能把vector放在private內。
所以我用個double。
能幫忙一下,我真的不知道怎麼用。我是個新手...
謝謝。
※ 編輯: kasim0226 來自: 111.255.103.122 (01/21 23:01)
→
01/21 23:25, , 3F
01/21 23:25, 3F
→
01/21 23:28, , 4F
01/21 23:28, 4F
→
01/21 23:29, , 5F
01/21 23:29, 5F
→
01/21 23:30, , 6F
01/21 23:30, 6F
我本來想用,類似這樣的形勢下去寫。改到最後已經亂七八糟了XDD
private:
int *mean;
Gaussian::Gaussian(int length) {
mean = new int[length];
}
推
01/21 23:33, , 7F
01/21 23:33, 7F
這是VC自己加的,應該影響不大。(大概)
我VC寫沒多久了...抱歉。
→
01/21 23:33, , 8F
01/21 23:33, 8F
→
01/21 23:33, , 9F
01/21 23:33, 9F
→
01/21 23:34, , 10F
01/21 23:34, 10F
→
01/21 23:36, , 11F
01/21 23:36, 11F
→
01/21 23:37, , 12F
01/21 23:37, 12F
是我忘記用std::
謝謝大家的幫忙。
程度差加上精神不好,問了個白癡的問題,真的很抱歉。
謝謝
※ 編輯: kasim0226 來自: 111.255.103.122 (01/22 01:45)