将结构数组传递给c ++中的函数

时间:2012-12-03 20:26:04

标签: c++ arrays visual-studio-2010 struct

我已经编写了一个正常运行的程序。我需要把它分解成函数。我有3个结构数组。我想创建一个函数,从文件中读取信息并将其echoprints出来。我只需要一个关于如何通过它的例子。我会发布我的代码,但我不希望其他学生接受它。感谢。

2 个答案:

答案 0 :(得分:2)

如果您使用的是C数组:

struct A { int v; }
A data[10];

void func(A *array, size_t n) {
}

func(data, 10);

或者如果您使用的是矢量:

std::vector<A> vec;

void func(std::vector<A>& array) {
}

func(vec);

答案 1 :(得分:1)

由于您将此标记为“C ++”,我假设您使用的是矢量(:-))

void f1 ( yourVector& yourVector )
{
  // do something with the vector as read-write (for example fill the vector with somthing).
}


void f2 ( const yourVector& yourVector )
{
  // do something with the vector as read-only.
}

int main()
{
  std::vector <yourStruct> yourVector;
  f1( yourVector );
  f2( yourVector );
  return 0;
}