相关疑难解决方法(0)

如何将对象传递给C++中的函数?

我是C++编程的新手,但我有Java经验.我需要有关如何将对象传递给C++中的函数的指导.

我是否需要传递指针,引用或非指针和非引用值?我记得在Java中没有这样的问题,因为我们只传递了保存对象引用的变量.

如果您还可以解释在哪里使用这些选项,那将会很棒.

c++ pointers c++-faq pass-by-reference pass-by-value

245
推荐指数
4
解决办法
13万
查看次数

为什么要在C ++中放入const(...)&

我想知道-为什么const (...)&在C ++中引入一个好主意?我在一些课程教程中找到了此代码。我了解到,const在将某些东西&传递给函数的同时,它使它们保持不变,并且无法更改。为什么两者都做?如果我无法更改某些内容,为什么还要将其传递给函数?

这是一个例子:

class CVector {
      public:
        int x,y;
        CVector () {};
        CVector (int a,int b) : x(a), y(b) {}
        CVector operator + (const CVector&);
    };

    CVector CVector::operator+ (const CVector& param) { //example 
      CVector temp;
      temp.x = x + param.x;
      temp.y = y + param.y;
      return temp;
    }
Run Code Online (Sandbox Code Playgroud)

c++ class

6
推荐指数
1
解决办法
6827
查看次数

在Rcpp中使用NumericMatrix和NumericVector进行矩阵乘法

我想知道是否有一种使用NumericMatrix和NumericVector类计算矩阵乘法的方法。我想知道是否有任何简单的方法可以帮助我避免以下循环进行此计算。我只想计算X%*%beta。

// assume X and beta are initialized and X is of dimension (nsites, p), 
// beta is a NumericVector with p elements. 
for(int j = 0; j < nsites; j++)
 {
    temp = 0;

    for(int l = 0; l < p; l++) temp = temp + X(j,l) * beta[l];

}
Run Code Online (Sandbox Code Playgroud)

提前非常感谢您!

matrix-multiplication rcpp

4
推荐指数
1
解决办法
2110
查看次数