首页 > 解决方案 > 试图转换 wxVector 的一个组件这是 wxString 到 wxStringArray 但程序不想

问题描述

这个想法是将 wxVector 转换为 wxStringArray 所以我做了一个简单的函数来为我做这件事,这个:

wxArrayString m_ProductStruct::m_ArrayConverter(const wxVector<m_Product*>& m_Prod) {
    wxArrayString m_Temp;
    for (size_t m_ProductCounter = 0; m_ProductCounter < m_Prod.size(); m_ProductCounter++) {
        m_Temp.push_back(m_Prod[m_ProductCounter]->m_Name);
    }
    return m_Temp;
}

这个函数以前工作得很好,但现在,我不知道发生了什么,因为每次我尝试使用 wxStringArray 或某个向量时,都会出现这种错误:

错误图片

顺便说一句,我尝试了很多方法,比如让这个函数成为一个 void return 和两个传递参数,什么都没有,仍然是同样的错误。

我当前需要将 wxVector 更改为 wxStringArray 的代码是:


inline int m_MainClientClass::m_AppendProduct(m_Product* m_ProductData) {
    m_GlobalProductsObject.push_back(m_ProductData);
    m_Products = m_ArrayConverter(m_GlobalProductsObject);
    nlohmann::json m_TempJson;
    for (size_t m_ProductsSize = 0; m_ProductsSize < m_Products.size(); m_ProductsSize++){
        m_TempJson.push_back(m_GlobalProductsObject[m_ProductsSize]->m_Serialize());
    }
    m_ProductsBuffer = m_TempJson;
    m_KUtils::m_ListUpdater(m_Products, *m_ProductsList);
    m_KUtils::m_UpdateConsole(*m_LogConsole, "[K] - Product [" + m_ProductData->m_Name + "] Added ", m_LogConsoleLogBuffer, m_ConsoleGreen, true);

    return 1;
}

如有必要,我的包括:

#include <iostream>
#include <wx/wx.h>
#include "m_ProductManager.h"
#include "m_KUtils.h"
#include "m_ProductManagerWindow.h"
#include "m_ProductHeader.h"
#include "m_GlobalHeader.h"

标签: c++cwxwidgets

解决方案


推荐阅读