7
このコードを私が望むように動作させることはできますか?私。コンセプトがプライベートメンバー機能にアクセスできるようにするには?友人のようなアクセスを伴うC++の概念
template <typename T>
concept bool Writeable()
{ return requires (T x,std::ostream os) { { x.Write(os) } -> void }; }
template <Writeable T>
void Write(std::ostream &os,const T &x) { x.Write(os); }
class TT
{
private:
void Write(std::ostream &os) const { os << "foo"; }
//friend concept bool Writeable<TT>();
friend void ::Write<TT>(std::ostream &,const TT &);
};
おかげで明示的に