tôi đã thực hiện một enum như:enum lớp như chỉ số mảng
enum class KeyPressSurfaces {
KEY_PRESS_SURFACE_DEFAULT,
KEY_PRESS_SURFACE_UP,
KEY_PRESS_SURFACE_DOWN,
KEY_PRESS_SURFACE_LEFT,
KEY_PRESS_SURFACE_RIGHT,
KEY_PRESS_SURFACE_TOTAL
};
và sau này tôi cố gắng để xác định một mảng như tôi đã gõ dưới đây, nhưng tôi nhận lỗi, size of array 'KEY_PRESS_SURFACES' has non-integral type 'KeyPressSurfaces'
SDL_Surface*KEY_PRESS_SURFACES[KeyPressSurfaces::KEY_PRESS_SURFACE_TOTAL];
tôi hiểu sai lỗi, nhưng tôi không biết di chuyển các số KeyPressSurfaces
để đủ điều kiện cho hằng số trong enum.
Tôi cũng nhận ra rằng tôi chỉ có thể sử dụng enum
chứ không phải enum class
, nhưng tôi cảm thấy điều này sẽ hiệu quả và tôi muốn tìm hiểu cách thực hiện việc này.
Bất kỳ phản hồi/lời khuyên nào được đánh giá cao! Cảm ơn!
tại sao bạn muốn sử dụng enum để chỉ định kích thước của mảng? Kích thước phải là một hằng số thời gian biên dịch. – user463035818
Enum là hằng số thời gian biên dịch. – parsley72