2017-03-02 37 views
-2

仍然是一個初學者到編碼,但是沒有一種方法能獲得從一個陣列子陣列,而無需使用嵌套循環即更傳統的方法的?(C++)如何從數組中獲取沒有嵌套循環的子數組?

+6

作爲一個初學者的罰款。提出一個編碼問題,但不包括你正在嘗試解決的問題樣本不是。這就像訪問汽車問題的機械師,但忘記帶你的車。請編輯您的問題以包含任何相關代碼,理想情況下以最簡單的形式傳達特定問題。 – tadman

+2

我也通過你的意思是*「傳統方法」 *什麼困惑 - IMO循環是在編程中最傳統的東西之一。 – UnholySheep

+2

當你說「數組」時,你的意思是一箇舊的C風格的數組?當你說「子數組」時,你的意思是什麼?爲什麼不簡單地有一對索引(開始和結束)?還是一對迭代器? –

回答

1

假設你想要一個向量的一部分的副本,你可以使用一個構造函數的迭代符的開始和新的向量的末尾。

vector<int> array = {0, 1, 2, 3, 4, 5}; 
vector<int> subArray(array.cbegin() + 2, array.cbegin() + 4); 

for (int i : subArray) { 
    cout << i << endl; 
} 

輸出:

2 
3 
+0

OP從來沒有提到過載體 – UnholySheep

+0

這個問題太模糊不清。向量是處理數組的更經典的C++方法之一。如果問題得到更新並且事實證明OP意味着裸C數組,std :: array或指針,我會正確地刪除我的答案。 –