{"width":"100%","blog_title":"Cry's Blog","provider_url":"https://hatena.blog","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fblog.cryolite.net%2Fentry%2F20040802%2Fp1\" title=\"tag\u4ed8\u304dtuple - Cry&#39;s Blog\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","categories":["C++"],"title":"tag\u4ed8\u304dtuple","version":"1.0","provider_name":"Hatena Blog","author_url":"https://blog.hatena.ne.jp/Cryolite/","published":"2004-08-02 00:00:00","author_name":"Cryolite","image_url":null,"height":"190","url":"https://blog.cryolite.net/entry/20040802/p1","blog_url":"https://blog.cryolite.net/","description":"chained inheritance\u306b\u3088\u3063\u3066\uff0c\u5404\u30c7\u30fc\u30bf\u30d5\u30a3\u30fc\u30eb\u30c9\u3092tag dispatch\u3055\u308c\u305fgetter\u306b\u3088\u3063\u3066\u53d6\u5f97\u3067\u304d\u308btuple\uff0e class empty_tuple { public: empty_tuple(){ } empty_tuple(empty_tuple const &r){ } void get(){ } }; template<class T, class Tag, class Derived = empty_tuple> class tagged_tuple : public Derived { public: tagged_tuple() : Derived()\u2026","type":"rich"}