почему нельзя перегрузить operator+(int a, int b); ?
От: Ruweb  
Дата: 23.07.07 18:36
Оценка:
За чтож такие огранечения ему присвоили?
Re: почему нельзя перегрузить operator+(int a, int b); ?
От: _Dreamer Россия  
Дата: 24.07.07 03:41
Оценка:
Здравствуйте, Ruweb, Вы писали:

R>За чтож такие огранечения ему присвоили?


в стандарте есть такое —

13.5 Overloaded operators
...
An operator function shall either be a non-static member function or be a non-member function and have at
least one parameter whose type is a class, a reference to a class, an enumeration, or a reference to an enumeration.
...


а что, есть большое желание переопределить сложение для int ?
Re: почему нельзя перегрузить operator+(int a, int b); ?
От: Kabuto Россия  
Дата: 24.07.07 08:35
Оценка:
Здравствуйте, Ruweb, Вы писали:

R>За чтож такие огранечения ему присвоили?


Так завещал великий и ужасный Страуструп!

Если действительно интересно за что, читай "Дизайн и эволюция C++". Я думаю в электронном виде её достать не сложно.
Re: почему нельзя перегрузить operator+(int a, int b); ?
От: Кодт Россия  
Дата: 24.07.07 09:01
Оценка: +2
Здравствуйте, Ruweb, Вы писали:

R>За чтож такие огранечения ему присвоили?


Это не ограничения Оператор + уже определён над целыми числами.
Ты же не возмущаешься, почему нельзя
void foo() { cout << "foo!"; }
void foo() { cout << "bar!"; } // хочу определить ещё раз!!! мне первая foo не нравится!
int main() { foo(); }
... << RSDN@Home 1.2.0 alpha rev. 655>>
Перекуём баги на фичи!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.