MSVC(和icc)自动调用memset C ++

问题描述 投票:3回答:1

我已经集中使用了大数据结构,每当我创建(通过放置新的)它时,编译器会自动添加“memset”调用。即使在释放模式下,即使我设置/ SDL和/ GS OFF。这绝对是多余的,它会产生一些我不需要的开销。如何防止冗余memset调用生成?

enter image description here

godbolt example

visual-c++ initialization memset overhead
1个回答
0
投票

你可以实现Tmp::Tmp()构造函数来摆脱memset,即:

struct Tmp
{
    String a0;
    String a1;
    String a2;

    Tmp() {}
};

https://godbolt.org/z/J6-C8S

© www.soinside.com 2019 - 2024. All rights reserved.