C++ 如何将矩阵设置为函数的参数

C++ 如何将矩阵设置为函数的参数,c++,function,matrix,parameters,C++,Function,Matrix,Parameters,我有一个矩阵,用户将定义它的大小和它的elemant值,我想将它作为参数或其他方式从main发送到函数中,尝试使用指针来表示它,但没有成功,将它定义为全局不是一个解决方案,因为我将给矩阵大小的值在用户输入之前是不会设置的。矩阵也不能是函数参数,所以我被卡住了。任何人都可以帮我把matris送到功能区对不起,我的问题太长了 int main(){ int matris [k][k]; for(i=0 ; i<k ; i++){ for(t=0 ; t<k ; t++){ ci

我有一个矩阵,用户将定义它的大小和它的elemant值,我想将它作为参数或其他方式从main发送到函数中,尝试使用指针来表示它,但没有成功,将它定义为全局不是一个解决方案,因为我将给矩阵大小的值在用户输入之前是不会设置的。矩阵也不能是函数参数,所以我被卡住了。任何人都可以帮我把matris送到功能区对不起,我的问题太长了

    int main(){
int matris [k][k];

for(i=0 ; i<k ; i++){
for(t=0 ; t<k ; t++){
cin<<matris[i][t];
}
}
func(a,b,c,x);

}

func(int a, int b, int c, x){
//some stuff
}
intmain(){
整数矩阵[k][k];
对于(i=0;i
#包括
使用名称空间std;
int常数k=2;
无效函数(int&m)[k][k])
{
//一些东西

cout您可以将矩阵表示为
向量

#include <vector>

using namespace std;

void myFunction(const vector<vector<int> >& matrix) {
  // do something w/ matrix passed in...
}

int main() {
  // create a 3x4 matrix initialized to all zero
  const size_t rowCount = 3;
  const size_t colCount = 4;
  vector<vector<int> > matrix(rowCount, vector<int>(colCount, 0));

  // pass matrix to a function
  myFunction(matrix);

  return 0;
}
#包括
使用名称空间std;
void myFunction(常量向量和矩阵){
//做点什么,传递矩阵。。。
}
int main(){
//创建一个初始化为全零的3x4矩阵
const size\u t rowCount=3;
const size\u t colCount=4;
向量矩阵(行数,向量(列数,0));
//将矩阵传递给函数
myFunction(矩阵);
返回0;
}

我在中有一个基本示例,请先阅读。顺便说一句,这不是一个downvoter,但您应该做得更好…@gsamaras ok MASTER(!).我知道r的功能是如何工作的,但只是错过了一件小事,不需要阅读整个纪录片,其中包含了我已经知道的大部分事情,所以我只是在寻找我错过的一件小事,每个人都可以错过small@gsamaras有时,如果他们阅读了关于整个主题的全部文件,可能会是所以,如果你知道这个问题是如何解决的,请以你对整个主题的那一小部分的了解来向我表示敬意,或者如果你不知道如何解决或者不想分享如何解决,请不要说有人阅读整个文档,谢谢!对不起愤怒,但这种回答让我发疯。@gsamaras全文太长,无法共享,所以我需要将其分成两部分。嗯,很抱歉试图帮助塔哈。不过,别担心,我不会再让你发疯了。:)这不是一个答案,你可以用1000种不同的方式向函数提供数据,但OP已经询问了如何用一种非常具体的方式来实现。事实上,我想要的是大小,所以“k”由用户提供too@TahaSümer:如果你想要一个动态大小矩阵,那么你要么自己实现,要么使用Boost之类的库。中给出了一个简单的裸体动态矩阵实现。正如你真正写的那样(我已经多次回答了这个确切的问题)。
#include <vector>

using namespace std;

void myFunction(const vector<vector<int> >& matrix) {
  // do something w/ matrix passed in...
}

int main() {
  // create a 3x4 matrix initialized to all zero
  const size_t rowCount = 3;
  const size_t colCount = 4;
  vector<vector<int> > matrix(rowCount, vector<int>(colCount, 0));

  // pass matrix to a function
  myFunction(matrix);

  return 0;
}