例。以下のテンプレートクラス T を用いた doProcessing 関数は、下記の Widget クラスのインターフェースを暗示的に要求する。
template<typename T<
void doProcessing(T& w)
{
if(w.size() > 10 && w != someNastyWidget)
{
T temp(w);
temp.nomalize();
temp.swap(w);
}
}
class Widget
{
public:
Widget();
virtual ~Widget();
virtual std::size_t size() const;
virtual void normalize();
void swap(Widget& other);
};
セコメントをする