c++ - 返回匿名结构
问题描述
看来您可以通过struct
这种方式返回一个未命名的:
auto foo() {
struct {
int bar;
int square() {
return bar * bar;
}
} a { 7 };
return a;
}
无论如何,如果没有多余的变量 name a
,是否可以这样做,因此是匿名的?
解决方案
我不知道这个练习的意义是什么,所以这里有一个从技术上满足你要求的答案:
auto helper()
{
struct {
int x;
} a {0};
return a;
}
decltype(helper()) foo()
{
return {8};
}
该结构未命名。
foo
不返回命名变量。
当然,这简直是荒谬的——人们只会命名结构而不是这个decltype
愚蠢的东西。
推荐阅读
- robotframework - 如何跳过测试用例 1 中的剩余步骤并继续机器人框架工作中的其他测试用例
- algorithm - 交通问题:鲍勃、卡罗尔、大卫和爱丽丝被困在荒岛上
- javascript - 在 Javascript 中,为什么不再支持 ShiftLeft?如何检测正在按下哪个 shift 键?
- postgresql - PostgreSQL - 如何在例程中使用等于 null
- python - 如何从字典列表中提取键
- php - 如何在 MySQL 中使用 ROW_NUMBER 来检查每位员工每天的行数?
- cucumber - 组织黄瓜测试场景和特点
- sql - 在 Oracle SQL 中重新排列值
- python - 移除反应 DiscordBot
- python - 如何将 JSON 响应对象(来自烧瓶的 jsonify)转换为字典以进行处理