小编8bi*_*ide的帖子

当makefile规则的目标是foreach函数时停止错误

我有一个makefile,它定义了一些目标是foreach函数的规则.

$(foreach var,$(list), $($(var)_stuff) $($(var)_more_stuff)):
    @echo Building $@ from $^...
    $(CC) $(FLAGS) ...
Run Code Online (Sandbox Code Playgroud)

有没有办法让make在遇到错误时退出而不通过整个列表.

makefile gnu-make

9
推荐指数
3
解决办法
1万
查看次数

模板朋友语法

假设我有两个模板类.

template<class T>
class baseclass1
{
    template<class> friend class baseclass2;
}

template<class D>
class baseclass2
{
     template<class T> void foo( D& x, T& y)
     {
          ...
     }
}
Run Code Online (Sandbox Code Playgroud)

上面的代码允许所有类型的baseclass1友好所有类型baseclass2,多对多关系.我有两个问题,

允许baseclass1只是函数的朋友是什么语法

baseclass2<class D>::foo<class T>( D& x, T& y).  
Run Code Online (Sandbox Code Playgroud)

而且,允许baseclass1朋友只使用该函数的语法是什么

baseclass2<class D>::foo<class T>( D& x, T& y)其中Tfrom baseclass1匹配T来自函数foo.

编辑

对于那些一直声称你不能成为模板专业化的朋友.这段代码有效

template<class cake>
class foo
{
    public:
        static void bar(cake x)
        {
            cout << x.x;
        }
};


class pie
{
    public: …
Run Code Online (Sandbox Code Playgroud)

c++ templates

8
推荐指数
1
解决办法
284
查看次数

标签 统计

c++ ×1

gnu-make ×1

makefile ×1

templates ×1