Форум программистов, компьютерный форум CyberForum.ru

Не могу понять ошибку - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ сортировать массив от одного найденного элемента до другого найденного элемента http://www.cyberforum.ru/cpp-beginners/thread968577.html
сортировать массив от одного найденного элемента до другого найденного элемента В моей задаче необходимо найти самое крайнее левое отрицательное число массива и самое крайнее правое отрицательное число и отсортировать числа между ними Числа я нахожу , а вот как сортировать от нужных элементов массива не знаю template <typename T> void searchElem(T a, int size){ T...
C++ Сколько клеток находится под боем шахматного коня есть задача. http://acm.timus.ru/problem.aspx?space=1&num=1197 написал решение: #include <iostream> using namespace std; int main(int argc, char const *argv) { int vert = { {2,3,4,4,4,4,3,2,}, http://www.cyberforum.ru/cpp-beginners/thread968572.html
Можно ли измерить время работы участка кода в тактах процессора? C++
Если да, то подскажите способ. Важно что бы при измерениях не мерились службы и процессы винды и всего остального.
робота с текстом C++
3 задан текст.определить,содержит ли он цифры?
C++ Составить слово из букв, заданных в двухмерном массиве http://www.cyberforum.ru/cpp-beginners/thread968554.html
Двухмерный масив n*m содержит некоторые буквы русского алфавита , расположенные в произвольном порядке. Написать программу,проверяющую,можно ли мз этих букв составить данное слово S.Каждая буква массива используется не более одного раза
C++ Написать программу для создания триарного дерева. Написать программу для создания триарного дерева. каждый элемент ссылается на три элемента такого же типа.. каждый из этих элементов в со очередь ссылается на три элемента и т.д. #include "stdafx.h" #include <iostream> #include <stdio.h> #include <stdlib.h> using namespace std; подробнее

Показать сообщение отдельно
murtukov
 Аватар для murtukov
8 / 8 / 3
Регистрация: 30.01.2013
Сообщений: 99
04.10.2013, 00:40     Не могу понять ошибку
Всем привет.

Делаю задание из универа. В принципе все работает с использованием дружественного класса, но хочется обойтись без friend'ов. Попробовал и вот что вышло:

Все просто, есть два класса: Person и Database. Database хранит объекты Person с помощью контейнера std::list<Person const *>. Ошибка возникает в строке 44.

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
54
55
56
57
58
59
60
61
62
#include <iostream>
#include <list>
using namespace std;
class Person;
typedef list<Person const *> Perslist;
////////////////////////////////////////////////////////////////
class Person
{
    string name;
 
public:
    Person()
    {}
 
    Person(const char *n)
    { name = n; }
 
    virtual ~Person()
    {}
 
    string retName()
    { return name; }
 
    void getName(const char *n)
    { name = n; }
//friend class Database;
};
////////////////////////////////////////////////////////////////
class Database
{
    Perslist plist;
 
public:
 
    void add(Person const *p)
    {
        plist.push_back(p);
    }
 
    void printList()
    {
        for (Perslist::const_iterator it = plist.begin(), end = plist.end(); it != end; ++it)
            {
                cout << (*it)->retName() << endl;
//                cout << (*it)->name << endl:
            }
    }
};
////////////////////////////////////////////////////////////////
int main()
{
    Person p1("Timur"), p2("Max"), p3("Alexander");
 
    Database db;
 
    db.add(&p1);
    db.add(&p3);
 
    db.printList();
 
    return 0;
}
Выдает вот такую ошибку:

44|error: passing 'const Person' as 'this' argument of 'std::string Person::retName()' discards qualifiers [-fpermissive]|

Плохо знаком с работой контейнеров и итераторов. Если назовете хорошие ресурсы для быстрого ознакомления, буду благодарен.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 00:43. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru