如何将此C代码转换为C++?

gsa*_*ras 7 c c++ arrays c++11

我有一些声明如下的数组:

static double covalent_radius[256] = {
    [ 0 ] = 0.85,
    [ 1 ] = 0.37,
    ...
};
Run Code Online (Sandbox Code Playgroud)

C++不允许这种声明.有没有办法实现这个目标?

Mab*_*bus 11

static double covalent_radius[256] = {
    0.85, /* ?,  Unknown    */
    0.37, /* H,  Hydrogen   */
    ...
};
Run Code Online (Sandbox Code Playgroud)

它是C89,而不是C99,所以我认为它应该有效.


Ste*_* Lu 6

你为什么不这样做:

static double covalent_radius[256] = {
    0.85, /* 0: ?,  Unknown    */
    0.37, /* 1: H,  Hydrogen   */
    ...
};
Run Code Online (Sandbox Code Playgroud)