General rules of passing/returning reference of array (not pointer) to/from a function?

后端 未结 6 1226
猫巷女王i
猫巷女王i 2020-12-02 06:58

We can pass reference of an array to a function like:

void f(int (&a)[5]);

int x[5];
f(x);     //okay
int y[6];
f(y);     //error - type of y is not `in         


        
6条回答
  •  無奈伤痛
    2020-12-02 07:11

    With C++11's trailing return type syntax, you can also write:

    auto foo () -> int (&)[3]
    {
        static int some_array[3]; // doesn't have to be declared here
        return some_array; // return a reference to the array.
    }
    

提交回复
热议问题