如果我在結構(函數)內的某種類型,結構的局部範圍是typedef
?瞭解兩個結構(函數)中的typedef的作用域
考慮下面的例子,其中我已經在兩個單獨的函數中將foo假設爲int
和double
。這個例子是否正確?
template <typename T>
struct firstfunctor
{
typedef int foo;
foo operator()(const foo& a, const foo& b)
{
return /*whatever*/
}
};
template <typename T>
struct secondfunctor
{
typedef double foo;
foo operator()(const foo& a, const foo& b)
{
return /*whatever*/
}
};
+1,但它不是一個*成員類型別名*? – Pubby 2012-01-12 18:55:20
@Pubby:也許吧。也許成員類型*名稱*是一個很好的術語...並且還提醒您需要說'typename firstfunctor :: foo'很多:-) –
2012-01-12 18:56:37