我對此持續了2天,因爲我對C++這麼新。我想使用此函數從CString數組轉換爲Int數組,但我不知道它是如何可能的完成。有沒有任何建議,感謝提前!從CString數組轉換爲整數在MFC中的數組
這裏是我的代碼:
void CCalculationBasicDlg::StringToIntegerArr(const CStringArray& arFields)
{
int length = arFields.GetSize();
int* arNum = new int[length];
int tmp = 0;
for (int i = 0; i < length; i++)
{
tmp = _tstof(arFields[i]);
arNum[i] = tmp;
}
}
// button to test function
void CCalculationBasicDlg::OnBnClickedBtnResult()
{
UpdateData(TRUE);
CString str_1, strDelimiters;
CStringArray arFields1;
edit_number_one.GetWindowText(str_1);
m_ctrlDelimiters.GetWindowText(strDelimiters);
// take String 1 and store in arFields1
MyTokenizer(str_1, strDelimiters, arFields1);
StringToIntegerArr(arFields1);
// Can I put a breakpoint to test the integer array
UpdateData(FALSE);
}
我認爲MFC容器已被STL容器所取代。我甚至懷疑微軟在他們生產的C++應用程序中再次使用MFC容器。因此,也許你應該學習STL,並放棄使用這些傳統的,過時的MFC,它們在15年前有目的,但現在不是。 – PaulMcKenzie
你的問題到底是什麼?請描述它是什麼。 –
順便說一句,使用STL它成爲1行程序,而不是15或20行:'std :: vector s; ... std :: vector v; ... std :: transform(s.begin(),秒。(),std :: back_inserter(v),std :: stoi);' –
PaulMcKenzie