gpt4 book ai didi

c++ - 我可以 typedef 模板模板参数吗?

转载 作者:可可西里 更新时间:2023-11-01 16:36:35 26 4
gpt4 key购买 nike

在 C++ 库头文件中,我们有时会看到以下内容以提高类内代码的易读性:

template<typename MyExplicitelyLongTemplateParameter>
class C
{
public:
typedef MyExplicitelyLongTemplateParameter P;

// Use "P" and keep your sanity.
};

我的问题是,可以对模板模板参数做同样的事情吗?

template<template<typename> typename MyExplicitelyLongTemplateParameter>
class C
{
public:
typedef /* ??? */ P;

// Use "P" and keep your sanity.
};

最佳答案

你不能创建 typedef,不,但你可以缩短名称:

template <template <typename> typename MyExplicitlyLongTemplateParameter>
class C
{
public:

template <typename T>
struct P
{
typedef MyExplicitlyLongTemplateParameter<T> Type;
};

// Use "P<T>::Type" and keep your sanity.
};

关于c++ - 我可以 typedef 模板模板参数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5845950/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com