2010-08-24 77 views
5

模板專門給出一個命名空間

namespace A { 
    class Foo; 
    class Bar; 
} 

namespace B { 
    class Foo; 
    class Bar; 
} 

我想模板上的命名空間A或B使得下列作品類:

template<name> class C { 
    name::Foo* foo; 
    name::Bar* bar; 
} 

可以這樣直接完成還是我需要在其中創建一對結構類型與typedefs?

+0

模板參數不允許爲名稱空間。 – 2010-08-24 16:25:47

回答

4

您無法在名稱空間上進行模板化。如果你能夠使用一個類(最有可能的公共屬性/靜態方法),那麼你可以在類上作爲半解決方法進行模板化。

1

不,模板不能在名稱空間上進行參數化。