我已经将我的程序中的瓶颈识别为从摄入w_char []并从中初始化字符串的复制操作,从而复制缓冲区。
const std::wstring name = payload->Header->Name;
此代码一次又一次地使用不同的值,但对于name
的生命周期,有效负载结构不能更改。因此,只需要存在单个缓冲区。 wchar数组来自无法更改的API。并且后续代码期望name
是一个wstring并且已经很好地优化了,我认为它使用wstring而不是数组更清晰。
我知道,无论如何,wstring只是一个wchar缓冲区。我需要的是像std :: move的一般等价物,但对于这种特殊情况。这里是否没有标准方法来表示 intent ,因此编译器可以优化它,如果可以的话?