Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
具有已知类型的别名函数模板 如果我想在C++中为已知类型别名模板,我会这样做: using MyVector = std::vector<MyClass>; 使用MyVector=std::vector;_C++_Templates_Alias - Fatal编程技术网

具有已知类型的别名函数模板 如果我想在C++中为已知类型别名模板,我会这样做: using MyVector = std::vector<MyClass>; 使用MyVector=std::vector;

具有已知类型的别名函数模板 如果我想在C++中为已知类型别名模板,我会这样做: using MyVector = std::vector<MyClass>; 使用MyVector=std::vector;,c++,templates,alias,C++,Templates,Alias,如何为函数模板设置相同的值 template <typename T> void MyFunction(T MyValue); 模板无效MyFunction(T MyValue); 我试过: using MyIntFunction = MyFunction<int>; 使用MyIntFunction=MyFunction; 但是它不起作用。您不能为函数使用模板别名,因为没有这样的语法。别名声明旨在为类型引入别名 无论如何,您可以使用constexpr变量来执行(我

如何为函数模板设置相同的值

template <typename T> void MyFunction(T MyValue);
模板无效MyFunction(T MyValue);
我试过:

using MyIntFunction = MyFunction<int>;
使用MyIntFunction=MyFunction;

但是它不起作用。

您不能为函数使用模板别名,因为没有这样的语法。

别名声明旨在为类型引入别名

无论如何,您可以使用
constexpr
变量来执行(我怀疑)您正在尝试执行的操作:

constexpr auto MyIntFunction = &MyFunction<int>;
constexpr auto MyIntFunction=&MyFunction;
下面是一个简单的工作示例:

#include<iostream>

template <typename T>
void MyFunction(T MyValue) {
    std::cout << MyValue << std::endl;
}

constexpr auto MyIntFunction = &MyFunction<int>;

int main() {
    MyIntFunction(42);
}
#包括
模板
void MyFunction(T MyValue){

STD::我将使用<代码> Auto&& MyTime[= ](int v){MyFalm(V);};<代码>;在我看来,C++中的函数本身是一个单元格,不是一个类型/类,它不可能是混叠的。谢谢,我不知道。