{"type":"rich","categories":["C++"],"image_url":null,"blog_title":"Chiharu \u306e\u65e5\u8a18","author_url":"https://blog.hatena.ne.jp/chiharunpo/","url":"https://chiharunpo.hatenablog.com/entry/20110301/1298985233","width":"100%","title":"std::allocate_shared \u301c\u30ab\u30b9\u30bf\u30e0 \u30a2\u30ed\u30b1\u30fc\u30bf","description":"\u5148\u65e5\u306e\u65e5\u8a18\u306e\u7d9a\u304d\u3002std::allocate_shared \u7528\u306e\u30ab\u30b9\u30bf\u30e0 \u30a2\u30ed\u30b1\u30fc\u30bf\u3068\u3057\u3066\u3001\u7c21\u6613\u7684\u306a\u30e1\u30e2\u30ea \u30d7\u30fc\u30eb\u3092\u7528\u610f\u3057\u3066\u307f\u307e\u3057\u305f\u3002 namespace { template <int unit> class memory_manager { private: union trait { trait* next; unsigned char body[unit]; }; public: memory_manager(const std::size_t len): free(nullptr), traits(new trait[len]), length(len) { trait* next \u2026","author_name":"chiharunpo","provider_name":"Hatena Blog","version":"1.0","blog_url":"https://chiharunpo.hatenablog.com/","published":"2011-03-01 22:13:53","height":"190","provider_url":"https://hatena.blog","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fchiharunpo.hatenablog.com%2Fentry%2F20110301%2F1298985233\" title=\"std::allocate_shared \u301c\u30ab\u30b9\u30bf\u30e0 \u30a2\u30ed\u30b1\u30fc\u30bf - Chiharu \u306e\u65e5\u8a18\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>"}