gpt4 book ai didi

c++ - CComboBox::GetLBText 返回垃圾

转载 作者:太空狗 更新时间:2023-10-29 20:43:43 25 4
gpt4 key购买 nike

我正在填充一个组合框:

    while((pHPSet = pHPTable->GetNext()) != NULL)
{
CString str = pHPSet->GetName();
// I am normally using str but to proove that this is
// not the problem I am using "a"
m_comboBaseHP.AddString(_T("a"));
}

现在我正在尝试读取组合框:

if(m_comboBaseHP.GetCount() > 0)
{
CString csHPName = _T("");
m_comboBaseHP.GetLBText(0, csHPName);
// This is the ms way but ReleaseBuffer causes a crash
//CString str = _T("");
//int n = m_comboBaseHP.GetLBTextLen( 0 );
//m_comboBaseHP.GetLBText( 0, str.GetBuffer(n) );
//str.ReleaseBuffer();

// Do whatever with csHPName
}

问题是 csHPName 在调试器中显示了一些中文标志。我假设这是内存垃圾。这发生在同一个方法中。这发生在开奖前。后绘制相同的问题。这发生在调试和发布中。我不明白这是怎么发生的,因为我实际上并没有使用指针。

最佳答案

显然有必要将组合框的属性 Has Strings 设置为 True。

关于c++ - CComboBox::GetLBText 返回垃圾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14644947/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com