[問題] 樣板程式庫queue問題
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VS2008
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
queue
問題(Question):
利用函式庫裡的push及pop可以成功建出一個FIFO的buffer,
假如長度是5,請問有辦法將裡面的5個數值取出來做其他計算嗎?
餵入的資料(Input):
預期的正確結果(Expected Output):
錯誤結果(Wrong Output):
程式碼(Code):(請善用置底文網頁, 記得排版)
#include <iostream>
#include <queue>
using namespace std;
int main()
{
queue <double> buffer;
const int NUMBERS_SIZE = 10;
double numbers[NUMBERS_SIZE] = {1.0, 2.0, 3.0, 4.0, 5.0,
6.0, 7.0, 8.0, 9.0, 10.0};
for (int i = 0; i < 10; i++)
{
buffer.push(numbers[i]);
if (buffer.size() == 5)
{
buffer.pop();
}
}
system("PAUSE");
return 0;
};
程式碼大概如上,請問有辦法將buffer內的5個數值取出來做計算嗎?
謝謝
補充說明(Supplement):
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 120.126.5.217
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1461588960.A.262.html
※ 編輯: t78923t (120.126.5.217), 04/25/2016 20:57:09
→
04/25 21:02, , 1F
04/25 21:02, 1F
推
04/25 22:56, , 2F
04/25 22:56, 2F
推
04/25 22:58, , 3F
04/25 22:58, 3F
推
04/25 23:19, , 4F
04/25 23:19, 4F
我的目的是想要值一邊fifo進來
一邊將queue裡的所有值拿出來計算
並輸出計算後的值,有辦法這樣做嗎?
※ 編輯: t78923t (120.126.5.208), 04/25/2016 23:48:39
※ 編輯: t78923t (120.126.5.208), 04/26/2016 00:10:20
→
04/26 00:22, , 5F
04/26 00:22, 5F
→
04/26 00:22, , 6F
04/26 00:22, 6F
→
04/26 00:24, , 7F
04/26 00:24, 7F
→
04/26 00:24, , 8F
04/26 00:24, 8F
→
04/26 01:17, , 9F
04/26 01:17, 9F
→
04/26 01:19, , 10F
04/26 01:19, 10F
→
04/26 01:24, , 11F
04/26 01:24, 11F
→
04/26 10:49, , 12F
04/26 10:49, 12F
deque::at可以提出每個值來做運算嗎?
例如將值存到其他變數做加減
還是一樣要用iter來取值?
※ 編輯: t78923t (163.25.86.76), 04/26/2016 12:26:17
→
04/26 12:28, , 13F
04/26 12:28, 13F
謝謝大家!
※ 編輯: t78923t (120.126.5.208), 04/26/2016 13:16:58