Avatar
omochimetaru 9/15/2022 6:46 AM
iterator_traitsは、イテレータに関する型情報を取得するためのクラスである。
6:47 AM
traitパターンってのがあって、それで型をプロトコル(?)に準拠させたい側が丁寧にusing(or typedef) しておいて
6:47 AM
みたいにやっておくと、変なもの与えてもtrait準拠の時点でおかしいから
6:47 AM
コード本文の深いところに入る前にエラーが出る
6:48 AM
あと今調べたんだけど頑張ればSFINAEを使って、メンバを持っているかどうかも静的に判定できるらしい
6:48 AM
だからめちゃくちゃ頑張ればconcept準拠相当のロジックを事前にテンプレートプログラミングで判定できるんじゃないかな・・・?