[英]Returning a reference array from a const member function
如何從const成員函數返回數組引用?
class State{
Chips (&arr() const)[6][7] { return arr_; }
Chips val() const { return val_; }
}
'const Chips [6] [7]'類型表達式'Chips(&)[6] [7]'類型引用的初始化無效
謝謝。
你的語法正確,但是如果arr_
是類的直接成員(可能是),那么你根本就不能向這個成員返回非成本引用。 在上面的arr
方法中,成員arr_
被視為具有const Chips[6][7]
類型。 您不能使用此類型來初始化Chops (&)[6][7]
類型的引用,因為它會破壞const正確性。 為了編譯上面的內容,你還需要在返回的引用上使用const
...
const Chips (&arr() const)[6][7] { return arr_; }
...
但無論如何,使用typedef你會好得多
...
typedef Chips Chips67[6][7];
const Chips67 &arr() const { return arr_; }
...
您需要將該函數指定為返回Chips指針。 所以,
Chips* arr() const;
是你在找什么。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.