插入向量后删除对 wstring 的引用

remove reference to wstring after insertion to vector

我有一个接受 LPCTSTR 的向量,并通过引用 wstring (ws1) 插入了一个值。问题是每次 ws1 更改其值时,先前插入到 vector 的值也会更改。任何建议如何在插入向量后删除对 ws1 的引用?

const char* attributeoffile = file->Attribute("Method");

vecFileConsolidateParams.push_back(FILECONSOLIDATEPARAMS());
size_t size = strlen(attributeoffile)+1;
std::wstring ws1;
ws1.resize(size, L'[=10=]');
#pragma warning (disable : 4996 )
std::mbstowcs(&ws1[0], attributeoffile, size);
vecFileConsolidateParams[count].filemethod = &ws1[0] ;

修好了。使用了新的运算符、wmemset 和 wmemcpy。

TCHAR *tc0 = new TCHAR[size0];
tc0[size0] = { L'[=10=]' };
wmemcpy(tc0, &ws0[0], size0);
.
.
.
vecFileConsolidateParams[count].filename = tc0;
delete [] tc0;