C++ 用ATL开发COM组件,参数为字符串的方法。
如(加法):STDMETHODIMPCchuli::add(LONGx,LONGy,LONG*v){*v=x+y;returnS_OK;}现在需要一个传入2个参数(字符串...
如(加法):
STDMETHODIMP Cchuli::add(LONG x, LONG y, LONG* v)
{
*v = x + y;
return S_OK;
}
现在需要一个传入2个参数(字符串, 分隔符),然后进行分割处理,最后将结果以字符串形式返回。请问怎么写,给个简单的例子。 展开
STDMETHODIMP Cchuli::add(LONG x, LONG y, LONG* v)
{
*v = x + y;
return S_OK;
}
现在需要一个传入2个参数(字符串, 分隔符),然后进行分割处理,最后将结果以字符串形式返回。请问怎么写,给个简单的例子。 展开
1个回答
展开全部
STDMETHODIMP Cchuli::split(BSTR bstr, char splitter, [OUT] BSTR* result)
{
CString str = bstr;
//处理分割str,将结果字符串通过返回参数BSTR数组result返回,略
return S_OK;
}
追问
因为不太懂数组,就把结果全部保存在一个CString里了,BSTR*怎么返回这个CString的字符串?
追答
CString str = bstr;
int nIndex = 0;
int pos = str.Find(splitter);
while(pos != -1)
{
result[nIndex ++] = str.Left(pos).AllocSysString();
str = str.Mid(pos + 1);
pos = str.Find(splitter);
}
result[nIndex ++] = str.AllocSysString();
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询