c – 合成类模板所需的T接口

template <typename T>  
class A  
{  
    // use the type parameter T in various ways here  
}

有没有办法自动合成模板A使用的T的可行类定义?我的期望是一个工具或编译器技巧,可以为类型参数T生成锅炉板代码,我可以进一步调整我的需求.

我知道如果我写了A类,我可以使用boost概念检查等为“用户”提供一些提示……但是这是一个不熟悉的代码库,我没有写A类的奢侈.到目前为止我构建了手动读取所需的参数类T,方法是读取A类的代码并在编译器的帮助下(带有简洁的消息).

有没有更好的办法?

最佳答案 如果我理解正确,那么您正在寻找一种为给定模板类自动生成
concept archetype的方法.目前,这是不可能的,也许永远不会.

这里的主要问题是,在没有任何先验知识的情况下很难说出As代码的语义.Dave Abrahams不久前写了一个blog post,他表明有可能调用无约束函数从受概念约束的代码开始,编译器仍然能够正确执行概念检查.

但是你所要求的是一个能够凭空综合概念检查的编译器.我不是一个编译人员,但我想不出用今天的工具来实现这一目标的方法.如果有一天这种情况变得可能,那肯定会很酷.

点赞