Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на C / C++


Информационный Канал Subscribe.Ru

RusFAQ.ru: Программирование на C / C++

Выпуск № 607
от 16.10.2004, 17:30

Администратор:
Имя: Nick.Box
URL: Информационный ресурс
ICQ: 365124
[censored], [censored]
О рассылке:
Задано вопросов: 1963
Отправлено ответов: 3750
Активность: 191.0 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

gAmUssA
Статус: Доверительный
Общий рейтинг: 157.74
[Подробней >>]
bocha
Статус: Профессиональный
Общий рейтинг: 119.9
[Подробней >>]
Василевский Александр
Статус: Доверительный
Общий рейтинг: 116.43
[Подробней >>]
 
vitya
Статус: Профессиональный
Общий рейтинг: 109.71
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 1957. Спасибо всем Экспертам за советы. А выручил меня Василевский Александр! Все прекрасно - травка зелен... (ответов: 1)
Вопрос № 1958. Здравствуйте, уважаемые эксперты. Подскажите пожалуйста, как можно перегрузить например бинарный опе... (ответов: 3)

Вопросов: 2, ответов: 4


 Вопрос № 1957

Спасибо всем Экспертам за советы. А выручил меня Василевский Александр! Все прекрасно - травка зеленеет солнышко блестит,,,;),,,,НО еще одна ошибка меня мучает
//---
[Linker Error] 'D:PROGRAM FILESBORLANDCBUILDER6LIBGLAUX.LIB' contains invalid OMF record, type 0x21 (possibly COFF)
//---
Сталкивались ли ВЫ с ней ?? И если знаете объясните еще что такое OMF и COFF ? Запуск coff2omf.exe (как советует хелп) ничего не меняет...



Вопрос отправлен: 11.10.2004, 21:53
Отправитель: Сергей

[Следующий вопрос >>] [Список вопросов]

Отвечает gAmUssA

Здравствуйте, Сергей!
COFF - Common Object File Format. Формат объектных файлов, принятый для многих платформ.

Ответ отправлен: 12.10.2004, 17:07
Отправитель: gAmUssA


 Вопрос № 1958

Здравствуйте, уважаемые эксперты.
Подскажите пожалуйста, как можно перегрузить например бинарный оператор плюс так что бы можно было выполнить следующую процедуру:
с=a+b+c;
перегрузка операторов происходит следующим образом:
friend A operator+(A& a,A& b);
Естественно, что при таком определении выражение не будет считаться (после выполниния операции a+b вернется выражение типа A а не A& как требует функция).
Но я не понял как еще можно определить эту функцию, чтобы она работала.
Заранее спасибо за ответ.



Вопрос отправлен: 13.10.2004, 17:21
Отправитель: Вадим

[Следующий вопрос >>] [Список вопросов]

Отвечает bocha

Добрый день, Вадим!
вообще-то, при выполнении a+b или b+c создается анонимный экземпляр A, на который ссылка м.б. получена, так, что все длжно работать, только объявление должно быть
friend A operator+(const A& a, const A& b);

Ответ отправлен: 13.10.2004, 19:00
Отправитель: bocha


Отвечает Василевский Александр

Здравствуйте, Вадим!
Объявляйте функция следующим образом:
friend A operator +( const A& a, const A& b );
В приложении приведена [работающая] программа.
Выражение a+b возвращает объект типа A, ссылка на который передаётся во второй оператор. Здесь всё нормально, так и должно быть. Объявлять результатом функции A& нельзя, т.к. ссылку на локальный объект возвращать нельзя.
А вообще, такие вопросы возникают из-за плохого знания темы. Повторите тему "ссылки".

Приложение:

Ответ отправлен: 14.10.2004, 09:04
Отправитель: Василевский Александр


Отвечает vitya

Добрый день, Вадим!
передавайте данные в оператор, как константные ссылки. Так как оператор + не имеет права изменять своие данные (по логике вещей).

Ответ отправлен: 14.10.2004, 09:24
Отправитель: vitya



Форма отправки вопроса

Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

(C) 2002-2003 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (27)
C / C++ (18)
Perl (8)
Builder / Delphi (18)
Pascal (21)
Basic / VBA (9)
Java / JavaScript (7)
PHP (19)
Криптография (9)
WinAPI (16)
Радиоэлектроника (15)
Пользователю
Windows 95/98/Me (46)
Windows NT/2000/XP (64)
"Железо" (39)
Поиск информации (22)
Администратору
Windows NT/2000/XP (39)
Linux / Unix (15)
Юристу
Гражданское право (7)
Семейное право (4)
Трудовое право (6)
КоАП (5)

Отправить вопрос всем экспертам выбранной рассылки.





http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.prog.cplus
Отписаться

В избранное