const/static关键字是否在变量声明中传播

Nat*_*bin 2 c++

我想知道const/static关键字是否适用于在单个C++语句中声明的所有变量.

例如,使用此代码

static const int a, b, c;
Run Code Online (Sandbox Code Playgroud)

它们都被声明为静态const int?或者只是'a'声明为静态const int,其余声明为int或其中的一些变体?

Ale*_*rov 8

staticconst适用于所有变量.

*,[],&只适用于一个单一的变量.

例如:

static int *a, &b=*a, c[10]={};
Run Code Online (Sandbox Code Playgroud)
  • 所有变量都是静态的,但是

  • 只有a指针,

  • 只是b一个参考,

  • 只是c一个数组.

有关变量声明语法的详细信息,请参阅:

如果您对语法的原因感兴趣,请参阅此问题.