gpt4 book ai didi

c++ - 如何在模板化函数指针声明中读取这么多星号和括号?

转载 作者:可可西里 更新时间:2023-11-01 15:29:43 28 4
gpt4 key购买 nike

<分区>

来自 Introduction to the C++11 feature: trailing return types

文章主张

template <class T> class tmp {
public:
int i;
};

auto foo()->auto(*)()->tmp<int>(*)(){
return 0;
}

相当于

template <class T> class tmp{
public:
int i;
};

tmp<int> (*(*foo())())() {
return 0;
}

我不明白第二个代码示例中的复杂功能。一开始应该看哪里?我猜是 foo .但是 foo 旁边的统计数据将定义 foo作为指针...基于第一个代码示例,我将片段转换为

tmp<int> (*)() (*)() foo(){ return 0;}

所以 foo 是一个返回 0 的函数,但返回类型很棘手:它的返回类型是函数指针,其返回类型又是一个返回类型为 tmp<int> 的函数指针。 .

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