#構造化束縛における適用前、適用後
C++17において、構造化束縛が追加されました。
とても便利な機能なので是非利用したい。
私としては、忘備録として、この記事を書く。
#before
auto human_bind(){
struct human{std::string name_; int years_; bool ok_;}
return human{"elen",21,true};
}
auto a = human();
std::cout<<a.name_<<","<<a.years_<<","<<a.ok_<<std::endl;
#after
#include<iostream>
#include <tuple>
int main(){
auto human = {
std::make_tuple("elen",21,true),
std::make_tuple("eva",1,false)
};
for(auto&& [name,years,ok]:human){
std::cout<<name<<","<<years<<","<<ok<<std::endl;
}
}
elen,21,1
eva,1,0
#以上
C++20待ち遠しい・・・。。