我有一些问题,里面的指针调用它,我认为这些是标准的问题,但幽冥少我无法来解决这些问题......定义的类矢量的矢量和由功能
我的苦衷被用来定义一个类(CRegression
)的矢量的矢量,并将其初始化为num_bits
向量元素和作为初始化段的CRegression
(CRegression
需要num_mesurments
它们中的每一个的一个元件仪表)。其次,我怎样才能在函数solve_regression
中调用CRegression
中的元素R2。
我希望下面的例子将解释为什么我需要b
作为指针。
如果不清楚,请告诉我,我会添加更多信息。
问候
#include <iomanip>
#include <queue>
#include <vector>
#include <cstdint<
#include <Eigen/Core>
typedef Eigen::Matrix< double , Eigen::Dynamic , 1 > VectorXd;
typedef Eigen::Matrix< double , 1 , 1 > Scalard;
void solve_regression(std::queue<double> *b , double &CReg_index ,
std::vector<CRegression> &Reg) {
std::cout << "size of b" << (*b).size() << std::endl;
std::cout << "R2" << (*Reg[CReg_index]).R2[0] << std::endl;
VectorXd::Map(&(*b).front() , (*b).size());
}
class CRegression {
public:
CRegression(uint32_t num_mesurments);
Scalard R2;
private:
};
int main(int argc, char* argv[]) {
uint8_t num_bits = 20;
std::vector<double> CReg_index(num_bits,0);
std::vector< std::queue<double> > b(num_bits);
// The next line does not pass compilation (why?)
std::vector< std::vector<CRegression> > Reg(num_bits ,
std::vector<CRegression>(1,CRegression(50)));
for (uint8_t i = 0; i < num_bits ; i++)
solve_regression(&(b[i]) , CReg_index[i] , &(Reg[i]));
}
请在编辑时发布您提到的错误,以节省我们(读者)的猜测。 – dcousens 2011-01-29 11:47:03
题外话:没有人知道SO当前用于代码片段,评论框等的字体名称吗?我喜欢! – Marlon 2011-01-29 11:48:43