{"provider_name":"Hatena Blog","blog_url":"https://osyo-manga.hatenadiary.org/","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fosyo-manga.hatenadiary.org%2Fentry%2F20120627%2F1340790487\" title=\"TypeErasure \u3067\u5143\u306e\u578b\u306b\u30ad\u30e3\u30b9\u30c8\u3059\u308b - C++\u3067\u30b2\u30fc\u30e0\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","height":"190","description":"Boost.TypeErasure \u3067\u51e6\u7406\u3092\u547c\u3073\u51fa\u3059\u969b\u306b\u5143\u306e\u578b\u306b\u30ad\u30e3\u30b9\u30c8\u3057\u3066\u6e21\u3057\u3066\u3044\u307e\u3059\u3002 template<class C, class T> struct push_back { static void apply(C& cont, const T& arg) { cont.push_back(arg); } }; std::vector<int> vec; any<push_back<_self, int>, _self&> c(vec); int i = 10; call(push_back<_self, int>(), c, i); // push_back::apply(std::\u2026","blog_title":"C++\u3067\u30b2\u30fc\u30e0\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0","type":"rich","title":"TypeErasure \u3067\u5143\u306e\u578b\u306b\u30ad\u30e3\u30b9\u30c8\u3059\u308b","provider_url":"https://hatena.blog","image_url":null,"width":"100%","url":"https://osyo-manga.hatenadiary.org/entry/20120627/1340790487","author_name":"osyo-manga","categories":["C++","boost"],"author_url":"https://blog.hatena.ne.jp/osyo-manga/","published":"2012-06-27 18:48:07","version":"1.0"}