静态2d数组

use*_*937 3 c++ arrays static

我试图在C++中定义和使用二维数组

const float twitterCounts[][5] = {
        {1,0,0,0,0},
        {0,2,0,0,0},
        {0,0,3,0,0}
};
Run Code Online (Sandbox Code Playgroud)

像这样返回:

const float ??? TwitterLiveData::data() {
    return twitterCounts;
}
Run Code Online (Sandbox Code Playgroud)

并像这样使用它

float x = TwitterLiveData::data()[1][1];
Run Code Online (Sandbox Code Playgroud)

静态存取器的正确签名是什么?

jpa*_*cek 5

您不能返回数组,但可以将指针返回到其第一个元素或对数组的引用.您只需在签名中输入正确的类型:

const float (*TwitterLiveData::data())[5] {
Run Code Online (Sandbox Code Playgroud)

或者可能

const float (&TwitterLiveData::data())[3][5] {
Run Code Online (Sandbox Code Playgroud)