मैं शतरंज गेम प्रोग्राम करने के लिए सी ++ का उपयोग कर रहा हूं। मैं कक्षा बोर्ड के लिए दो वर्ग विशेषताओं को बनाना चाहता हूं: पंक्तियां और कॉलमन्स। जावा में, मैं उन्हें स्थिर अंतिम घोषित करता हूं और जैसा कि मैं चाहता हूं सबकुछ काम करेगा। मैं सी ++ में एक ही घोषणा कैसे करता हूं? मुझे अन्य वर्गों में "बोर्ड :: ROWS" और "बोर्ड :: COLUMNS" द्वारा इन विशेषताओं तक पहुंचने की आवश्यकता है।सी ++ जावा स्थिर अंतिम समतुल्य
मेरे पास यह क्या है, जो संकलन त्रुटियों को फेंक रहा है क्योंकि ROWS और COLUMNS को m_TileMap की घोषणा के दायरे में घोषित नहीं किया गया है। #define कथन का उपयोग किए बिना ऐसा करने के लिए कोई अच्छा अभ्यास है?
class Board {
Tile *m_TileMap[ROWS][COLUMNS];
public:
static const int ROWS = 8;
static const int COLUMNS = 8;
Board(int m[ROWS][COLUMNS]);
}
मैं इसके बजाय std :: vector का उपयोग करने का सुझाव देता हूं! –