C++で、戻り値の型を別の関数呼び出しに依存させたいとき、autoで推論させるしかないのだが、それかつstd::optionalなどに限定したいとき、それのデストラクタをチェックするメタ関数を作れば良いことがわかった。あとは普通の関数であればSFINAEで解決できるが、CRTPの場合、static_assertを使えば解決できると思う #fedibird
様々な目的に使える、日本の汎用マストドンサーバーです。安定した利用環境と、多数の独自機能を提供しています。