编辑整个数据结构c ++?

Ada*_* W. 0 c++ data-structures

我对数据结构有疑问.有没有办法一次编辑整个结构,而不是一次编辑一个变量?FI:

struct foo
{
  int a=5;
  int b=4;
  int c=8;
};
int main()
{
    foo f;

    f-1;

    return 0;

}
Run Code Online (Sandbox Code Playgroud)

结果:

  f.int a=4;
  f.int b=3;
  f.int c=7;
Run Code Online (Sandbox Code Playgroud)

如果有办法做到这一点,那么在我正在制作的特定项目中,这将有很大帮助.无论如何,谢谢你的时间和帮助"D

Xir*_*ema 7

您可能正在寻找运营商重载.

struct foo
{
  int a=5;
  int b=4;
  int c=8;
  foo operator-(int val) const {
      foo copy(*this);
      copy.a -= val;
      copy.b -= val;
      copy.c -= val;
      return copy;
  }
};
int main()
{
    foo f;

    f = f - 1;

    return 0;

}
Run Code Online (Sandbox Code Playgroud)

您可能还会查看valarray在编译时是否知道参数的数量.