Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.05.2012, 16:23   #11
SevenXP
Пользователь
 
Регистрация: 17.09.2010
Сообщений: 44
По умолчанию

Трох забыл про наследование. Наследуеться только методы а параметры и конструкторы заного писать?

Код:
class vector
{         
  public: 
	 float f[5]; 
     vector(float i,float j,float k,float q,float w){f[0]=i; f[1]=j; f[2]=k; f[3]=q; f[4]=w;}
	
	 
	 float &operator[](int i)    // перегрузка оператора []
     { if(i<0 || i>4)                  // проверка на выход за границы массива
        { cout <<"No deapazon"<<endl;
           exit(1); 
        }
        return f[i];                  
     }
};


class vector2:vector {

	public: 
     vector2(float i,float j,float k,float q,float w): vector(i,j,k,q,w) {f[0]=i; f[1]=j; f[2]=k; f[3]=q; f[4]=w;}
};
Почему он не понимает перегруженный оператор[] в базовом классе когда я пишу

Код:
vector2 ff3(1,2,3,4,5);
cout<<ff3[2];

Последний раз редактировалось SevenXP; 23.05.2012 в 16:38.
SevenXP вне форума Ответить с цитированием
Старый 23.05.2012, 16:50   #12
SevenXP
Пользователь
 
Регистрация: 17.09.2010
Сообщений: 44
По умолчанию

Цитата:
Сообщение от SevenXP Посмотреть сообщение
Трох забыл про наследование. Наследуеться только методы а параметры и конструкторы заного писать?

Код:
class vector
{         
  public: 
	 float f[5]; 
     vector(float i,float j,float k,float q,float w){f[0]=i; f[1]=j; f[2]=k; f[3]=q; f[4]=w;}
	
	 
	 float &operator[](int i)    // перегрузка оператора []
     { if(i<0 || i>4)                  // проверка на выход за границы массива
        { cout <<"No deapazon"<<endl;
           exit(1); 
        }
        return f[i];                  
     }
};


class vector2:vector {

	public: 
     vector2(float i,float j,float k,float q,float w): vector(i,j,k,q,w) {f[0]=i; f[1]=j; f[2]=k; f[3]=q; f[4]=w;}
};
Почему он не понимает перегруженный оператор[] в базовом классе когда я пишу

Код:
vector2 ff3(1,2,3,4,5);
cout<<ff3[2];
Все врубился)) скажите тут много людей?

Код:
class vector
{         
  public: 
	 float f[5]; 
     vector(float i,float j,float k,float q,float w){f[0]=i; f[1]=j; f[2]=k; f[3]=q; f[4]=w;}
	 ~vector(void){}
	 
	 float &operator[](int i)    // перегрузка оператора []
     { if(i<0 || i>4)                  // проверка на выход за границы массива
        { cout <<"No deapazon"<<endl;
           exit(1); 
        }
        return f[i];                  
     }
};


class vector2: public vector {

	public: 
 vector2(float i,float j,float k,float q,float w): vector(i,j,k,q,w) {f[0]=i; f[1]=j; f[2]=k; f[3]=q; f[4]=w;}
~vector2(void){}


};

int main()
{ vector ff(1,2,3,4,5);
vector ff2(11,12,13,14,15);
vector2 ff3(1,2,3,4,5);
cout<<ff3[2];
Как тут удалять сообщения?
SevenXP вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сбой при получении производства объектов класса COM для компонента с CLSID Vistar Общие вопросы .NET 3 10.07.2011 23:31
(Delphi) Реализовать иерархии объектов и заданные методы для них Eglath Помощь студентам 2 02.06.2011 00:17
Реализовать операции со стеком в массиве Firagon Visual C++ 1 27.05.2011 00:33
как реализовать общий счётчик объектов класса? ZigaZaga Общие вопросы по Java, Java SE, Kotlin 7 18.06.2010 10:51
Сортировка Хоара(для объектов класса) m9yt Общие вопросы C/C++ 0 02.06.2010 18:45