วิธีที่ดีที่สุดในการเริ่มต้นสมาชิกข้อมูลส่วนตัวแบบคงที่ใน C ++ คืออะไร? ฉันลองสิ่งนี้ในไฟล์ส่วนหัวของฉัน แต่มันทำให้ฉันมีข้อผิดพลาด linker:
class foo
{
private:
static int i;
};
int foo::i = 0;
ฉันเดาว่าเป็นเพราะฉันไม่สามารถเริ่มสมาชิกส่วนตัวจากนอกห้องเรียนได้ ดังนั้นวิธีที่ดีที่สุดในการทำเช่นนี้คืออะไร?
inline static int x[] = {1, 2, 3};
(แม้ชนิดที่ไม่ใช่จำนวนเต็ม): ดูen.cppreference.com/w/cpp/language/static#Static_data_members