Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
anapshy
196 / 197 / 175
Регистрация: 14.11.2016
Сообщений: 768
Завершенные тесты: 3
1

Virtual friend function

06.07.2017, 20:44. Просмотров 873. Ответов 4
Метки нет (Все метки)

<<Виртуальный метод не может объявляться с модификатором static, но может быть объявлен как дружественная функция.>>
Виртуальный метод как дружественная функция?!
Или я что-то не так понял? Пример кода пожалуйста.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.07.2017, 20:44
Ответы с готовыми решениями:

C:\Dev-Cpp\lib\vector.h `ostream' is neither function nor member function; cannot be declared friend
выкидывает C:\Dev-Cpp\lib\vector.h `ostream' is neither function nor member...

Friend Function
Я не очень понимаю как пользаватса Friend функцыей Class.h #include...

Friend Function - C++
мне нужно введенную строчку передать в библиотеку , танцевал с бубном со всех...

Friend function
Нужно сделать функции Length и Angle френдовыми для другого класса. Как это...

friend function
После добавления дружественной ф-ции sum( а она для сложения salary у человека,...

4
dawn artist
Заблокирован
06.07.2017, 20:49 2
anapshy, очевидно, это бред.
0
Croessmah
++Ͻ
14630 / 8379 / 1582
Регистрация: 27.09.2012
Сообщений: 20,583
Записей в блоге: 2
Завершенные тесты: 1
06.07.2017, 20:56 3
Лучший ответ Сообщение было отмечено anapshy как решение

Решение

Цитата Сообщение от anapshy Посмотреть сообщение
Виртуальный метод как дружественная функция?
И что?
Цитата Сообщение от anapshy Посмотреть сообщение
Пример кода пожалуйста.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <iostream>
 
 
struct X
{
    virtual void foo(class Y*);
};
 
 
 
 
class Y{
    friend void X::foo(class Y*);//Виртуальная функция из X
    int x;
};
 
 
void X::foo(struct Y* p) {
    std::cout << "X::foo" << std::endl;
    p->x = 10;//ok
}
 
 
 
int main()
{
    X x;
    Y y;
    x.foo(&y);
}
http://rextester.com/FXEP36653
2
Ferrari F1
791 / 521 / 156
Регистрация: 27.01.2015
Сообщений: 3,025
Записей в блоге: 1
Завершенные тесты: 1
15.08.2017, 11:45 4
Цитата Сообщение от anapshy Посмотреть сообщение
Виртуальный метод не может объявляться с модификатором static, но может быть объявлен как дружественная функция.
чо за книжка:?
0
anapshy
196 / 197 / 175
Регистрация: 14.11.2016
Сообщений: 768
Завершенные тесты: 3
15.08.2017, 11:57  [ТС] 5
Ferrari F1,
Т. А. Павловская
"C/C++ программирование на языке высокого уровня"
206 страница
0
15.08.2017, 11:57
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.08.2017, 11:57

friend function
Помогите плз разобраться: Когда я делаю инкремент &quot;х&quot; через закрытые функции...

Friend function and Overload <<(>>)
#include &lt;iostream&gt; using namespace std; class array{ private:...

Selfpointer inside template friend function
Как получить указатель на нужный класс внутри дружественной фукции? def.h ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru