如何编写采用通用C ++标准库容器的模板函数

菲茨威廉·班尼特·达西

我有一个功能需要能够适用于不同的容器类型,例如

void foo(const std::vector<bar>& param1, const std::vector<double>& params2)

void foo(const std::list<bar>& param1, const std::list<double>& params2)

我写的bar哪里class函数主体本身使用通用的C ++标准库函数。

有什么办法可以使我成为模板吗?我努力了

template<typename T> void foo(const T<bar>&, const T<double>&)

但这给了编译器错误

错误C2988:无法识别的模板声明/定义

我正在使用MSVC2015。

songyuanyao

您应该声明T模板template参数,以表明它是模板名称(并需要实例化参数),例如

template<template <typename...> class T> 
void foo(const T<bar>&, const T<double>&);

生活

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何编写在Swift中采用CollectionType的通用递归函数?

您如何为标准库容器定义 C++ 概念?

C ++:打印或退出标准库容器以进行控制台

如何编写一个采用int或float的C函数?

如何在C ++ 11中有效选择标准库容器?

是否保证c ++标准库容器(如std :: queue)是可重入的?

为什么在C ++ 20中从标准库容器中删除了比较运算符?

C ++何时标准库容器中的typedef不是您所期望的?

有关所包含对象的C ++标准库容器线程安全性

如何编写通用函数以在 C 中重用

如何在C ++中使用通用引用参数为模板类编写构造函数

如何编写一个通用的或灵活的函数,该函数可以采用任意数量的参数以对它们执行指定的任务?

如何编写采用数组和指定数组大小的int的模板函数

如何在scala中编写通用函数?

如何为标准C库函数编写替换函数

如何编写采用泛型的泛型函数,该泛型实现了采用其他泛型的类

如何在Swig模板中调用标准javascript函数?

没有标准构造函数的类的 C++ 属性模板

如何使用可变参数模板编写通用函数包装器

如何为特定于类型的访问函数编写通用模板化包装器?

如何为任何数据构造函数编写通用函数?

C ++通用指针函数或模板

如何编写通用包装程序以在C ++ 14中调用Fortran函数(按引用调用->按值调用)

持有标准库容器的结构的POD含义

标准库容器的结构中是否有未使用的变量?

C#-创建一个其构造函数采用通用参数的类,导致转换异常

如何编写通用量化函数的存在版本?

如何在TypeScript中编写通用的,类型安全的高阶函数?

如何在Scala中编写通用数值函数?