Queue in c++

0

Witajcie ponownie, tym razem inny problem, mianowicie z kolejką, a bardziej z biblioteką queue, oraz z dodawaniem nowego elementu do kolejki. Wyskakuje mi błąd poniżej i się nie kompiluje:
" 2 IntelliSense: no instance of overloaded function "std::queue<_Ty, _Container>::push [with _Ty=alcohol, _Container=std::deque<alcohol, std::allocator<alcohol>>]" matches the argument list
argument types are: (std::string, int, int, int, double)
object type is: std::queue<alcohol, std::deque<alcohol, std::allocator<alcohol>>> c:\Users\Michal\Documents\Visual Studio 2012\Projects\alco_project\Source.cpp 50
"

#include <string>
#include <iostream>
#include<queue>

using namespace std;

struct alcohol{
	string name;
	int time1,time2;
	int weight;
	float grams;
};
int main(){
	string container,container2;
	int weight;
	size_t pos;
	queue <alcohol> alcohols;
while(test){
		cin>>container;
		cout<<container<<endl;
		cin>>weight;
		cout<<weight<<endl;
		cin>>container2;
		cout<<container2<<endl;
		if(container2.find(','))
			test=false;
		pos=container2.find(':');
		container2=container2.substr(pos+1);

		alcohols.push(container,(container2[0]-'0')*10+(container2[1]-'0'),(container[2]-'0')*10+container[2]-'0',weight,0.0);
	}
1
alcohol al;
al.name=container;
...
al.weight=weight;
al.grams=0;
alcohols.push(al);

lib dopisz sobie konstruktor, wtedy:

alcohols.push(alcohol(container, ... ,weight));

1 użytkowników online, w tym zalogowanych: 0, gości: 1