タイプのオブジェクトがあると仮定します
std::map<std::string, std::Tuple<int, float>> data;
このようにネストされた方法で(つまり、ranged forループで使用されたときに)要素タイプにアクセスすることは可能ですか?
for (auto [str, [my_int, my_float]] : data) /* do something */
いいえ、できません。
ネストされた構造化バインディングがC++ 17では許可されていないことをどこかで読んだことをはっきりと覚えていますが、将来の標準で許可することを検討しています。ソースが見つかりません。
いいえ、できません。しかしこれは:
for (auto&& [key, value] : data) {
auto&& [my_int, my_float] = value;
}
少なくとも近いです。