首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从模块导出概念

问从模块导出概念
EN

Stack Overflow用户
提问于 2020-09-29 06:27:08
回答 1查看 143关注 0票数 3

我找不到任何关于C++模块和概念交互的东西。从模块中导出概念的语法正确吗?

代码语言:javascript
复制
export module Module;

template <typename S>
export concept sequence = true;
EN

回答 1

Stack Overflow用户

发布于 2020-09-29 08:54:35

export导出声明。概念定义是一个声明,因此可以导出。就导出工作的结果而言,它的工作方式与导出任何其他声明一样。

对于特定的语法,export被应用于“声明”语法规则。“模板声明”是一种“声明”。“模板声明”包括模板头部,但“模板声明”的语法定义是it's a "template-head" followed by a "declaration"或“模板头部”后跟“概念定义”。

所以从语法上讲,如果你想export一个概念定义,你必须在模板头之前完成,因为concept-definition没有把export作为有效的语法。

然而,如果你想知道如何导出常规的模板,人们可能会认为,从这个语法来看,export可以出现在“模板头部”之前或之后。但是,standard specifically says this

模板声明的声明不能是导出声明。

由此,我们得出结论,所有模板都将export放在template-head之前。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64110425

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档