[英]Passing an STL queue as parameter to another function in C++
我在将队列作为参数传递给 C++ 中的 function 时遇到一些问题我有一个 STL 队列定义queue<int> example[100];
我有一个 function 定义void calculateSum(queue<int> &example, int size){}
我正在尝试通过编写calculateSum(example, 100)
将队列传递给此 function 但我一直收到错误消息, [cquery] no matching function for call to 'minimumDistance'
我应该怎么办? 任何反馈都会有所帮助
您的声明queue<int> example[100];
创建一个包含 100 个队列的数组。
您可能想要的只是queue<int> example;
然后让它随着你添加元素而增长。
queue<int> example[100];
将创建一个队列数组(名为example
)。 您的 function, void calculateSum(queue<int> &example, int size)
接受对单个整数队列(不是队列数组)的引用。
假设您确实想要一个队列数组,并且您确实希望 function 只接受对单个队列的引用,您必须从数组中选择一个队列来传递给它。 例如,您可以执行calculateSum(example[0], 123);
传入数组中的第一个队列。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.