Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在以下示例中,如何获取成员函数的返回类型?
template <typename Getter> class MyClass { typedef decltype(mygetter.get()) gotten_t; ... };
当然,问题是我在定义 MyClass 时没有“mygetter”对象。
我想要做的是:我正在创建一个缓存,它可以使用 getter 返回的任何内容,因为它是关键。
我不太确定你想要什么,但它似乎mygetter应该只是任何类型的对象Getter。用于std::declval获取这样的对象,无需其他任何东西(只能用于类型推导)
mygetter
Getter
std::declval
typedef decltype(std::declval<Getter>().get()) gotten_t;