Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Daemon_88
1 / 1 / 0
Регистрация: 03.02.2013
Сообщений: 54
1

Дружественная функция

13.11.2013, 18:28. Просмотров 344. Ответов 5
Метки нет (Все метки)

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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include <iostream>
#include <math.h>
using namespace std;
class massiv
{ int len,*p_mas;
public :
    massiv()
    {}
    massiv (int n)  
    {   int *p;
    p= new int(n);
    p_mas= p;
    len=n;
    for( ; p<p_mas+len ; p++)
        cin>>*p;
    }
    friend int search(massiv & temp)
    {
        int *p;
        p=p_mas ;
        int max=*p;
        p++;
        for( ; p<p+len ; p++)
        {
            if(*p>max)
                max=*p;
        }
        return max;
    }
 
    void display()      
    {   int *p;
    for(p=p_mas ; p<p_mas+len ; p++)
        cout<<(*p)<<"  ";
    cout<<endl;
    }
    int operator ++ ()  
    {   int *p,summ=0;
    for(p=p_mas ; p<p_mas+len ; p++)  
    {
        if(*p%2==0)
            summ+=*p;
    }
    return summ;
    }
};
void main()
{   
    massiv s1(10);
    s1.display();
    cout<<++s1<<endl;
    cout<<search(s1)<<endl;
}
необходимо создать дружественную функцию для поиска максимального эл-та массива, только она и не работает в проекте
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.11.2013, 18:28
Ответы с готовыми решениями:

Дружественная функция
У меня есть класс, подсчитывающий количество равносторонних треугольников в...

Дружественная функция
Хочу сделать вычисление площади как дружественную функцию, начал описывать,...

Дружественная функция
описать классы автомобиль и маршрут. Использовать дружественную функцию...

Дружественная функция. Графы
Здравствуйте! Задача такая: Пересечением двух графов называется граф, все...

Дружественная 2-м классам функция.
Код программы: #include &lt;iostream.h&gt; class matrix; class vector{ int...

5
dzrkot
zzzZZZ...
523 / 354 / 94
Регистрация: 11.09.2013
Сообщений: 2,039
13.11.2013, 18:39 2
у вас max имеет локальную область действия, не?
0
Daemon_88
1 / 1 / 0
Регистрация: 03.02.2013
Сообщений: 54
13.11.2013, 18:42  [ТС] 3
получается да
0
dzrkot
zzzZZZ...
523 / 354 / 94
Регистрация: 11.09.2013
Сообщений: 2,039
13.11.2013, 18:43 4
ну в этом косяк
0
Daemon_88
1 / 1 / 0
Регистрация: 03.02.2013
Сообщений: 54
13.11.2013, 19:12  [ТС] 5
всё равно не катит
0
dzrkot
zzzZZZ...
523 / 354 / 94
Регистрация: 11.09.2013
Сообщений: 2,039
13.11.2013, 21:48 6
ещё смотрите в самой функции
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
    friend int search(massiv & temp)
    {
        int *p;
        p=p_mas ;
        int max=*p;
        p++;
        for( ; p<p+len ; p++)
        {
            if(*p>max)
                max=*p;
        }
        return max;
    }
вы передаёте в неё объект, а обращаетесь к указателю без определения на объект, т.е надо делать temp.p_mas

и вообще зря вы через арифметику указателей делаете циклы, не наглядно
0
13.11.2013, 21:48
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.11.2013, 21:48

Не вызывается дружественная функция
Создал класс, есть дружественная функция: int NOD(int a,int b) { ...

Дружественная функция класса
Проблема в том что дружественная функция класа механик в класе car (friend void...

базовый,дочерний , дружественная функция
Базовый класс в нем будет массив имен из 10 элементов , конструктор должен сам...


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

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

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