У меня есть значение out
как BSTR * для интерфейса в C ++ COM dll. И я возвращаю это клиенту C # .Net. В моей функции C ++ я должен присвоить разные значения в соответствии с условием сравнения.
Например:
If my function is fun(BSTR* outval)
{
// I have to assign a default value to it such as:
*outval = SysAllocSTring(L"N");
Then I will check for some DB conditions
{
// And I have to allocate it according to that.
// Do I need to again calling SysAllocString?
eq.*outval = SySAllocString(DBVlaue);
}
}
Что произойдет, если я вызову SysAllocSTring два раза для одного и того же BSTR? Как лучше всего справиться с этим?