怎么让QT C++函数传入vector类型和QVector类型的参数都可以
时间: 2024-04-14 20:26:02 浏览: 184
QT,QVector 基本用法,遍历[实例讲解] - 小皮球的博客 - CSDN博客1
要让QT C++函数能够接受vector类型和QVector类型的参数,可以通过模板函数来实现。下面是一个示例代码:
```cpp
#include <vector>
#include <QVector>
template<typename T>
void processContainer(const T& container)
{
// 处理容器的代码
}
int main()
{
std::vector<int> vec = {1, 2, 3, 4, 5};
processContainer(vec); // 调用模板函数,传入vector类型的参数
QVector<int> qVec = {1, 2, 3, 4, 5};
processContainer(qVec); // 调用模板函数,传入QVector类型的参数
return 0;
}
```
在上述示例中,`processContainer`是一个模板函数,使用`typename T`来表示参数的类型。无论传入的是vector还是QVector,都可以通过这个模板函数进行处理。
请注意,模板函数的定义通常需要放在头文件中,以便在其他地方能够正确实例化和调用。
阅读全文