6
template <int N>
class myarray {
typedef int Bitmap;
public:
static Bitmap data[N];
};
template <int N> myarray<N>::Bitmap myarray<N>::data[N];
error: expected constructor, destructor, or type conversion before ‘myarray’Có gì sai trong định nghĩa mẫu này?
liên quan: http://stackoverflow.com/questions/610245/where-and-why-do-i- have-to-put-the-template-và-typename-keywords –
Bây giờ cho một câu hỏi theo dõi ngu ngốc: Tại sao không chỉ xóa dòng cuối cùng? Đó không phải là một tuyên bố thứ hai dư thừa sao? –
Doh! Tôi hiểu rồi. Tham chiếu không xác định. Đó là định nghĩa * bắt buộc *, trong khi dòng trước đó chỉ là * khai báo *. –