我如何定义像下面的C#示例那样的泛型/模板化类
在C#中:我如何定义像下面的C#示例那样的泛型/模板化类,c#,c++,templates,C#,C++,Templates,在C#中: 公共密封类状态机 我想写一个C++等价的。 这样: public sealed class StateMachine<TState, TTrigger> 模板 类状态机 { //... }; 像这样: public sealed class StateMachine<TState, TTrigger> 模板 类状态机 { //... }; 您可以使用Stuart和Xeo提出的方法,如果您想将类密封在这里,这就解释了如何做到这一点 编辑:甚至更好。您可以使
公共密封类状态机
<>我想写一个C++等价的。 这样:
public sealed class StateMachine<TState, TTrigger>
模板
类状态机
{
//...
};
像这样:
public sealed class StateMachine<TState, TTrigger>
模板
类状态机
{
//...
};
您可以使用Stuart和Xeo提出的方法,如果您想将类密封在这里,这就解释了如何做到这一点
编辑:甚至更好。您可以使用Stuart和Xeo提出的方法,如果您想将类密封在这里,这就解释了如何做到这一点 编辑:更好。对如何创建模板类有很好的解释。例如:
template <typename TState, typename TTrigger>
class StateMachine
{
//...
};
//函数模板
#包括
使用名称空间std;
模板
T GetMax(T a,T b){
T结果;
结果=(a>b)?a:b;
返回(结果);
}
int main(){
int i=5,j=6,k;
长l=10,m=5,n;
k=GetMax(i,j);
n=最大值(l,m);
cout对如何创建模板类有很好的解释。示例:
template <typename TState, typename TTrigger>
class StateMachine
{
//...
};
//函数模板
#包括
使用名称空间std;
模板
T GetMax(T a,T b){
T结果;
结果=(a>b)?a:b;
返回(结果);
}
int main(){
int i=5,j=6,k;
长l=10,m=5,n;
k=GetMax(i,j);
n=最大值(l,m);
你不想改写吗?你想改写吗