我有一段代码,klocwork服务器正在抛出存储在'& pData->中的动态内存;当没有传递参数时,键'丢失。即,如果argc不等于3。
typedef struct
{
std::string Key;
std::string Value;
}KEYVALPAIR;
std::vector<KEYVALPAIR*> gData;
int main(int argc, char** argv)
{
KEYVALPAIR* pData = new KEYVALPAIR;
if(argc == 3)
{
pData->Key = argv[1];
pData->Value = argv[2];
gData.push_back(pData);
}
}
我无法在if条件之后删除pData,因为如果condition为true,gData包含pData内存。我可以在else条件下删除pData吗?