2017-08-25 48 views
0

我知道C++概念提案的目的是,除其他外也许,放在模板参数的限制(比如,作为一个“序列”),对当前形势的其中任何设法编译足够好(和错误信息是糟糕的)。可以命名空间(是/满足a)概念吗?

但是 - 关于命名空间是什么?我的意思是,目前我们不能使用它们作为模板参数,但是人们会认为如果一个方法只使用静态方法和一个类的成员,那么命名空间也应该是一个令人满意的传递给它的东西。 Concepts提案的当前版本/当前版本是否支持?如果没有,这是考虑和拒绝,或只是没有考虑?

相关问题:

Is a class with only static methods better than a namespace with only non-member functions?

+6

你不可错过的命名空间。 – Yakk

+0

@Yakk:我不想传递它们,但也许我可以使用它们作为模板参数。 – einpoklum

+6

你不能那样做。那么,你的问题是什么? – Yakk

回答

2

概念不增加机构在编译或运行时通过命名空间。所以没有办法测试一个名字空间对抗一个概念,或者用一个名字空间参数化代码,禁止宏。

反射TS可允许在命名空间的反射(我不是最新的关于其当前状态),但是这是正交的概念。也许命名空间的具体化和反射可以被操纵,以使命名空间的概念检查和passimg周围不知何故,但如果它今天可能不是明天,副VERS因为它依赖于两个不同塑料的特性,其中这样的副作用是在偶然的最好。

+0

无赖。谢谢。 – einpoklum

相关问题