社区讨论
关于结构化绑定与 concept
学术版参与者 6已保存回复 16
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 16 条
- 当前快照
- 1 份
- 快照标识符
- @mhj20781
- 此快照首次捕获于
- 2025/11/03 19:25 4 个月前
- 此快照最后确认于
- 2025/11/03 20:36 4 个月前
我想要实现一个
concept C,其用于检查:- 对于一个类型
T v,下面这个表达式可以通过编译:auto [x, y] = v。
如果直接根据定义写的话,应该是这样:
CPPtemplate <typename T>
concept C = requires(T v) {
[](T t){ auto [x, y] = t; }(v);
};
这对于所有满足
C 的 T 确实是对的,但是若 T 不满足 C(例如 T = int)就会直接编译错误,而不是我期望中的输出 0。求一个解决方案(也就是实现一个
concept C),或者明确指出这不可能。回复
共 16 条回复,欢迎继续交流。
正在加载回复...