{"type":"rich","categories":["Generic Programming"],"version":"1.0","author_url":"https://blog.hatena.ne.jp/Cryolite/","url":"https://blog.cryolite.net/entry/20040402/p1","provider_name":"Hatena Blog","blog_url":"https://blog.cryolite.net/","blog_title":"Cry's Blog","image_url":null,"author_name":"Cryolite","width":"100%","title":"Policy or Trait?","provider_url":"https://hatena.blog","description":"Exceptional C++\u306e\u9805\u76ee2\u8aad\u3093\u3060\u3068\u304d\u306b\uff0c \u300cstd::char_traits\u3063\u3066MC++D\u306e\u8a00\u8449\u3067\u8a00\u3048\u3070traits\u3068\u547c\u3076\u3088\u308a\u3080\u3057\u308dpolicy\u3068\u547c\u3076\u3079\u304d\u3060\u3088\u306a\u301c\u300d \u3068\u601d\u3063\u305f\u3093\u3067\u3059\u304c\uff0c\u5b9f\u969b\u3053\u3046\u8003\u3048\u3066\u3044\u308b\u4eba\u306f\u79c1\u3060\u3051\u3067\u306f\u306a\u304b\u3063\u305f\u3088\u3046\u3067 I know that my definitions mean that std::char_traits is a policy class, despite its name, \u3053\u308c\u8aad\u3093\u3067\u981a\u690e\u75db\u3081\u308b\u307b\u3069\u6fc0\u3057\u304f\u9996\u3092\u7e26\u306b\u632f\u3063\u3066\u540c\u610f\u3057\u3066\u307e\u3057\u305f\uff0e\u3053\u306e\u65b9\u306epolicy\u3068trait\u306e\u5b9a\u7fa9\u306b\u306f\u82e5\u5e72\u8cdb\u540c\u3057\u304b\u306d\u308b\u3093\u3067\u3059\u3051\u3069\u306d\uff0e \u3053\u306e\u6295\u7a3f\u304b\u3089\u59cb\u307e\u308b\u8b70\u8ad6\u3082\u306a\u304b\u306a\u304b\u6d3b\u767a\u3067\uff0c\u2026","height":"190","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fblog.cryolite.net%2Fentry%2F20040402%2Fp1\" title=\"Policy or Trait? - 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>","published":"2004-04-02 00:00:00"}