class Tmp
{
public:
const static int v1[];
};
const int Tmp::v1[] = { 1, 2, 3, 4 };
Объявление массива
class tmp{
public:
int v1[] = { 1, 2, 3, 4 };
};
или
class tmp{
public:
const static int v1[] = { 1, 2, 3, 4 };
};
???
Подскажите, плиз
Цитата:
Originally posted by lexus
Почему не работают конструкции
class tmp{
public:
int v1[] = { 1, 2, 3, 4 };
};
или
class tmp{
public:
const static int v1[] = { 1, 2, 3, 4 };
};
???
Подскажите, плиз
Почему не работают конструкции
class tmp{
public:
int v1[] = { 1, 2, 3, 4 };
};
или
class tmp{
public:
const static int v1[] = { 1, 2, 3, 4 };
};
???
Подскажите, плиз
Если я не ошибаюсь, то инициализировать члены класса можно только в конструкторе.
Цитата:
Originally posted by lexus
Почему не работают конструкции
class tmp{
public:
int v1[] = { 1, 2, 3, 4 };
};
или
class tmp{
public:
const static int v1[] = { 1, 2, 3, 4 };
};
???
Подскажите, плиз
Почему не работают конструкции
class tmp{
public:
int v1[] = { 1, 2, 3, 4 };
};
или
class tmp{
public:
const static int v1[] = { 1, 2, 3, 4 };
};
???
Подскажите, плиз
Потому, что по стандарту в определении класса можно инициализировать лишь статические константные члены интегрального типа.
Инициализируй статический член вне определения класса:
Код:
Цитата:
Originally posted by Green
Потому, что по стандарту в определении класса можно инициализировать лишь статические константные члены интегрального типа.
Инициализируй статический член вне определения класса:
Потому, что по стандарту в определении класса можно инициализировать лишь статические константные члены интегрального типа.
Инициализируй статический член вне определения класса:
Код:
class Tmp
{
public:
const static int v1[];
};
const int Tmp::v1[] = { 1, 2, 3, 4 };
{
public:
const static int v1[];
};
const int Tmp::v1[] = { 1, 2, 3, 4 };
Спасибо