gpt4 book ai didi

c++ - 是否可以在不使用 decltype 的情况下推断先前定义的外部变量的类型

转载 作者:太空狗 更新时间:2023-10-29 21:10:49 26 4
gpt4 key购买 nike

// header

int extern has_a_type; // (1) extern declaration

// implementation

decltype(has_a_type) // (2) unnecessarily verbose type inference code
has_a_type; // (3) definition

我明白我可以使用 decltype 所以我实际上不必在定义 (3) (并可能初始化)它。但是 decltype 强制我写出变量的名称(可能是完全限定的和长的)两次 (2)。

如何避免写两次?类似于 auto has_a_type; 的东西(当然,它不起作用)。

最佳答案

你不能 - 开玩笑地说,因为没有人能说服标准委员会相信能够写作的优点

int extern has_a_type;
auto has_a_type;

尽管它很容易处理。结果可能是这样

decltype(auto) has_a_type;

为了从初始化程序中消除类型推导的歧义是必要的,然后,不幸的是,我们与已经可用的重复 decltype(has_a_type) 相去不远。

关于c++ - 是否可以在不使用 decltype 的情况下推断先前定义的外部变量的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52705091/

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