gpt4 book ai didi

c++ - 可以编写一个接受类型并返回不同类型的函数吗

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:05:46 27 4
gpt4 key购买 nike

是否可以编写一个接受类型并返回(相关)类型的函数。例如,一个函数采用名为“RandomVariable”的类型并返回名为“RandomVariableCovariance”的类型。我想一般来说,问题是类型名可以是参数还是返回类型。 C++0x 很好。

最佳答案

你不能用函数做到这一点,但你可以用模板特化来做到这一点。例如

template <class T>
struct ConvertType;

template <>
struct ConvertType<RandomVariable>
{
typedef RandomVariableCovariance type;
};

int main()
{
ConvertType<RandomVariable>::type myVar;
}

定义一个 ConvertType 类型,专门用于将 RandomVariable 转换为 RandomVariableCovariance。根据您的需要,可以通过这种方式进行各种巧妙的类型选择。

关于c++ - 可以编写一个接受类型并返回不同类型的函数吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6576112/

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