c放置新的与重载新的
发布时间:2020-12-16 05:17:19 所属栏目:百科 来源:网络整理
导读:关于SO的许多问题询问有关C( example 1,example 2)的新功能的用途.许多答案都说 – 自定义分配对象,如预先分配的空间. 但问题是 – 为什么需要为此安排新的?不仅仅是操作符的新超载足够吗?通过重载运算符new for class I可以精确控制从哪里获取内存 – 比
关于SO的许多问题询问有关C(
example 1,example 2)的新功能的用途.许多答案都说 – 自定义分配对象,如预先分配的空间.
但问题是 – 为什么需要为此安排新的?不仅仅是操作符的新超载足够吗?通过重载运算符new for class I可以精确控制从哪里获取内存 – 比如调用自定义分配器.那么为什么我需要为此目的安置新的? 解决方法
你认为两者都可以用于解决同一类问题是正确的,但你缺少的是运算符新的重载是侵入性的(分配策略在对象中),而新的放置不是(分配策略是完全的)独立).
Martin York的答案在这方面提供了一个很好的例子:std :: vector<>拥有自己的分配策略,而不对类型T添加任何要求. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |