Tôi có một lớp mẫumẫu bạn bè Nhiều chuyên
template< typename G, int N > class Foo { /* ... */ };
Tôi muốn chuyên môn hóa cho N=0
trở thành một người bạn của một lớp khác, nhưng tôi không biết cú pháp cho nó (và tôi không thể tìm thấy nó ra bản thân mình). Tôi cố gắng:
template< typename T >
class Bar {
template< typename G > friend class Foo< G, 0 >;
/* ... */
};
Tôi muốn cho bất kỳ loại G Foo< G, 0 >
trở thành một người bạn của class Bar<T>
. Cú pháp chính xác cho điều này là gì?
Cảm ơn bạn!
này biên dịch với gcc, nhưng thất bại trong việc biên dịch với phiên bản kêu vang 3.8. Thông báo lỗi là 'lỗi: định nghĩa lại 'X_partial' làm loại biểu tượng khác nhau mẫu lớp bạn bè X_partial;' . –
ScootyPuff