Разработка, производство и продажа радиоэлектронной аппаратуры
|
Требуется программист в Зеленограде - обработка данных с датчиков; ColdFire; 40 тыс.
e-mail: jobsmp@pochta.ru
|
Проблема использования констант внутри классов... (+)
Отправлено
=NIK= 11 июня 2008 г. 10:30
В ответ на:
Знатокам IAR для ARM и Си++ отправлено
<font color=gray>Femto</font> 11 июня 2008 г. 10:07
Проблема использования констант внутри классов заключается в том, что константы нужно инициализировать непосредственно в момент создания.
В вашем примере вы пытаетесь присвоить значения уже существующим константам (в конструкторе класса)
Чтобы этого избежать, необходимо передавать значение константы непосредственно в конструктор константы.
пример:
class my_class
{
public:
my_class(int my_const_val1, int my_const_val2); // конструктор
// далее какие-то функции....
char get_L1(char i);
char get_L2(char i);
private:
const int my_const1, my_const2; // собственно константы
};
// конструктор с правильной инициализацией константы
// передаем значения констант непосредственно в их конструкторы
my_class::my_class(int my_const_val1, int my_const_val2):my_const1(my_const_val1),my_const2(my_const_val2)
{
// ...
}
Составить ответ | Вернуться на конференцию
Ответы