static void setRecord(vector<CListCtrl_DataRecord>& records,const ArrayVector& datasVector,CString& num) { for (int i = 0; i < datasVector.size(); i++) { CString name = datasVector[i][0]; CString running = datasVector[i][1]; CString reason = datasVector[i][2]; records.push_back(CListCtrl_DataRecord(name,running,reason)); } num.Format(_T("%d"),datasVector.size()); }
static BOOL ReadTableDatas(const CString& itemName,AcStringArray& names,AcStringArray& datas) { names.removeAll(); datas.removeAll(); ArrayVector dataVector; ReportDataHelper::ReadDatas(itemName,dataVector,2); if(dataVector.empty()) return FALSE; for(int i = 0; i < dataVector.size(); i++) { names.append(dataVector[i][0]); datas.append(dataVector[i][1]); } return TRUE; }
/* 名称|运转|备注 名称|运转|备注 */ void GasSysDlg::OnInitList() { initList(m_permCListCtrl,m_permDataModel); initList(m_tempCListCtrl,m_tempDataModel); ArrayVector datasVector; //获取地面系统数据 ReportDataHelper::ReadDatas(PERMENT_OBJCT_NAME,datasVector,3); m_numPermSys = _T(""); m_permRecords.clear(); if(datasVector.size() > 0) { setRecord(m_permRecords,datasVector,m_numPermSys); } datasVector.clear(); //获取井下系统数据 ReportDataHelper::ReadDatas(TEMPGAS_OBJCT_NAME,datasVector,3); m_numTempSys = _T(""); m_tempRecords.clear(); if(datasVector.size() > 0) { setRecord(m_tempRecords,datasVector,m_numTempSys); } UpdateData(FALSE); if(IsNum(m_numPermSys)) { SetPermItems(_ttoi(m_numPermSys)); } if(IsNum(m_numTempSys)) { SetTempItems(_ttoi(m_numTempSys)); } }
void ReportDataHelper::WriteDatas( const CString& name,const ArrayVector& datas ) { AcDbObjectId objId; GDESDataObjectHelper::GetObjectId(name,objId); AcStringArray values; for(int i = 0; i < datas[0].length();i++) { for(int j = 0; j < datas.size(); j++) { values.append(datas[j][i]); values.append(_T("$")); } } SetObjectDatas(objId,values); }
static BOOL ReadDataFromFile(const CString& txtName,AcStringArray& names,AcStringArray& isRunings,AcStringArray& resons) { names.removeAll(); isRunings.removeAll(); resons.removeAll(); ArrayVector dataVector; ReportDataHelper::ReadDatas(txtName,dataVector,3); if(dataVector.empty()) return FALSE; for(int i = 0; i < dataVector.size(); i++) { names.append(dataVector[i][0]); isRunings.append(dataVector[i][1]); resons.append(dataVector[i][2]); } return TRUE; }
static BOOL ReadSysPumpDatas(ArrayVector& datas) { ArrayVector dataVector; ReportDataHelper::ReadDatas(GAS_PUMP_OBJCT_NAME,dataVector,4); if(dataVector.empty()) return FALSE; AcStringArray sysNames,pumpStates,pumpTypes,pumpAbilities; for(int i = 0; i < dataVector.size(); i++) { sysNames.append(dataVector[i][0]); pumpStates.append(dataVector[i][1]); pumpTypes.append(dataVector[i][2]); pumpAbilities.append(dataVector[i][3]); } datas.push_back(sysNames); datas.push_back(pumpStates); datas.push_back(pumpTypes); datas.push_back(pumpAbilities); return TRUE; }
int main(int argc, const char * argv[]) { ArrayVector<int> my_vector; for (int i = 0; i < 15; i++) { my_vector.insertAtRank(i, i * 2 + 2); std::cout << "in slot " << i << " is the number " << my_vector.elemAtRank(i) << "\n"; }; my_vector.removeAtRank(10); my_vector.removeAtRank(1); my_vector.removeAtRank(12); std::cout << "show vector after some removals\n"; for (int i = 0; i < 12; i++) { std::cout << "in slot " << i << " is the number " << my_vector.elemAtRank(i) << "\n"; } // 2) Own example here std::cout << std::endl << "2) My own example ------------" << std::endl; ArrayVector<float> other; for (int i = 0; i < 12; i++) { other.insertAtRank(i, i * PI); std::cout << "In slot " << i << " is the number " << other.elemAtRank(i) << std::endl; } std::cout << std::endl << "--- Size of vector: " << other.size() << " ---" << std::endl; while (!other.isEmpty()) { other.removeAtRank(0); } const char* res = other.isEmpty() ? "Yes" : "No"; std::cout << "--- Is vector now empty? " << res << std::endl; return 0; }