【问题标题】:How can I use a dynamic matrix as a parameter, of a function, in C++?如何在 C++ 中使用动态矩阵作为函数的参数?
【发布时间】:2015-06-02 11:02:10
【问题描述】:

我正在阅读 bmp 图片。所以我的矩阵是动态的。我正在运行时学习它的列和行大小。我想用这个动态矩阵作为函数的参数。

func(w,h, inMatrix, outMatrix);

我想这样调用我的函数。

void func(int w,int h,?,?)
{
....
    outMatrix[x][y].R=inMatrix[x][y].R*someThing;
....
}

如何定义这个函数?

那么 ?=?

感谢您的帮助!

【问题讨论】:

  • 只需将数组名称传递给函数,并以双数组形式接收。例如 void func1(char array[][]){} 将是函数定义
  • 您将调用函数为 func1(arr); arr 是双数组

标签: c++ function image-processing parameters parameter-passing


【解决方案1】:

使用指向包装该行为的对象的指针?或使用对矩阵的引用。由于性能问题,我会避免通过副本。

【讨论】:

  • 或者放弃指针,直接使用矩阵(或通过引用)。在这里使用指针几乎可以肯定是一个糟糕的解决方案。
  • 我不会直接通过复制使用它,最好的解决方案是引用是的。
猜你喜欢
  • 1970-01-01
  • 2021-08-11
  • 1970-01-01
  • 1970-01-01
  • 2017-08-02
  • 1970-01-01
  • 1970-01-01
  • 2021-11-20
  • 1970-01-01
相关资源
最近更新 更多