In header file...
public:
struct storeData
{
int iAccountNumber;
int iPin;
double dBalance;
string sFirstName;
string sLastName;
string sMiddleInitial;
};
vector <storeData> storeDataArray;
private:
string sTempArray [7];
string m_sFirstName;
string m_sLastName;
string m_sMiddleInitial;
int m_iAccountNumber;
int m_iPin;
double m_dAmount;
在另一個文件(的.cpp)如何爲特定向量的索引分配值?
m_iAccountNumber =的atoi(sTempArray [1] .c_str()); //帳號信息位於索引1 m_sFirstName = atoi(sTempArray [2] .c_str()); //名字位於索引2 m_sLastName = atoi(sTempArray [3] .c_str()); //姓氏位於索引3 m_sMiddleInitial = atoi(sTempArray [4] .c_str()); //中間inital位於索引4 m_dAmount = atoi(sTempArray [5] .c_str()); //數量位於索引5中 m_iPin = atoi(sTempArray [6] .c_str()); // pin info is located in index 6 cout < <「AFTER assign variable from array」< < endl; // int iAccountFinder = findAccountNumberInStore(m_iAccountNumber); //發送數據以驗證帳號是否存在
int iIndex = 0;
while(!storeDataArray.empty())//index could be 0 if array is empty or find that array is not empty and use loop until empty
{
if(m_iAccountNumber == storeDataArray[iIndex].iAccountNumber)
{
//return error code DU (duplication account number)
}
iIndex ++; //to keep loop until empty index
}
if(m_dAmount <= 0)
{
//return error code BADAMT
}
下面的代碼導致程序崩潰。
storeDataArray[iIndex].iAccountNumber = m_iAccountNumber;
storeDataArray[iIndex].sFirstName = m_sFirstName;
storeDataArray[iIndex].sLastName = m_sLastName;
storeDataArray[iIndex].sMiddleInitial = m_sMiddleInitial;
storeDataArray[iIndex].dBalance = m_dAmount;
storeDataArray[iIndex].iPin = m_iPin;
你是否曾經從'storeDataArray'中移除元素?你爲什麼期望它最終是空的? – 2014-11-24 23:23:07
從不在頭文件中使用'使用'子句。 – 2014-11-24 23:29:11