假設我有一個元組將std元組解壓縮爲指針?
std::tuple<A, B, C> myFavoriteTuple;
我可以這樣做:
A a;
B b;
C c;
std::tie(a, b, c) = myFavoriteTuple
但如果一些元組是複製真的很貴,我真正喜歡的是採取或引用一個指向我的元組中正確點的指針。我可以這樣做:
A* a = &std::get<0>(myFavoriteTuple);
B* b = &std::get<1>(myFavoriteTuple);
C* c = &std::get<2>(myFavoriteTuple);
但相比tie
語法如何真棒是顯得那麼跛。是否有任何其他方式來獲取指向元組件的指針/引用?
請參閱Boost.Fusion –
在某些情況下,從元組移動可能是最好的想法 - ''''std :: tie(myFavoriteTuple);' – zch
Oh man,C++ 17 is很棒:'auto && [a,b,c] = myFavoriteTuple;'完成。 – Barry