繁体   English   中英

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

[英]passing an array of structs to a function in c++

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

如果您使用 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);

由于您将其标记为“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;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM