这种模式是什么意思?新建(&条目[num_entries])项目;

what does this pattern mean? new (&entries[num_entries]) item;

本文关键字:num entries 项目 条目 是什么 模式 意思 新建      更新时间:2023-10-16

代码如下:

struct set_t {
       static const uint32 MAX_ENTRIES=128;
       uint32 num_entries;
       item_t entries[MAX_ENTRIES]; 
       inline void add_back(item_t item){
            ***new (&entries[num_entries]) item;***
            ++num_entries;
       }

};

此行:" new(& entries [num_entries])项目;"令人困惑,实际上是分配内存吗?

请查看以下问题:在"?

new (address) varname;

是所谓的位置新操作员,它在预先分配的缓冲区上构造对象。

所以您的问题的答案是:它不会分配新的内存。