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

Ошибка создания экземпляра класса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Запись звука и сравнение звуковых файлов http://www.cyberforum.ru/cpp-beginners/thread281110.html
хайо! Нужно записать звук, и сравнить с данным звуком. Возможно ли, или на грани фантастики? Буду рад ссылкам на подобные исходники, или полезную информацию по этому вопросу.
C++ Функции.Решение уравнений Добрый вечер. Помогите пожалуйста справиться с задачкой. собственно вот наработки,если нужны http://www.cyberforum.ru/cpp-beginners/thread281109.html
Найти сумму элементов побочной диагонали квадратной матрицы C++
Найти сумму элементов побочной диагонали квадратной матрицы, используя функцию на C++ и Создать поэкт, в результате которого изменяется высота и ширина изображения. Помогите очень прошу а то вылечу!!!
анимация: солнце двигается по небу. C++
В общем, нужно сделать анимацию : солнце двигается по небу.
C++ Организация вычислений при вводе данных. http://www.cyberforum.ru/cpp-beginners/thread281091.html
Написать программу которая генерирует три последовательности из 10 случайных чисел, выводит их на экран, а также вычисляет среднее арифметическое каждой последовательности.
C++ double to string Задание 11 главы 7 про массивы и строки Лафоре: перевести число double в строку и отформатировать. Вроде бы не сложно, но не непонятно с помощью чего должен осуществляться перевод. В задании... подробнее

Показать сообщение отдельно
login
2 / 1 / 0
Регистрация: 16.04.2009
Сообщений: 90

Ошибка создания экземпляра класса - C++

21.04.2011, 23:46. Просмотров 924. Ответов 4
Метки (Все метки)

Собственно ошибка в мейне error C2227: left of '->AddLast' must point to class/struct/union/generic type

Содержимое StringList.h:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#pragma once
#include <string>
struct ListItem
{
        std::string item;
        ListItem *next;
    };  
class StringList
{
    private:
        ListItem *first;
        ListItem *last;
    public:
    StringList();   
    ~StringList();
    void RemoveItem(std::string i);
    void RemoveAfter(std::string i);
    void AddLast(std::string i);
};
Содержимое
StringList.cpp:
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
63
64
65
66
67
68
69
70
71
72
#include "StringList.h"
StringList::StringList()
{
    first=last=NULL;
}
StringList::~StringList()
{
    ListItem *current=NULL;
    ListItem *next=first;
    while (next)
    {
        current=next;
        next=next->next;
        delete current;
    }
}
 
void StringList::RemoveItem(std::string i)
{
    ListItem *prev=NULL;
    ListItem *current=first;
    while (current) 
    {
        if ((*current).item==i)
        {
            if (prev) 
            {
                prev->next=current->next;
            }
            if (current==last)
            {last=prev;}
            delete current;
        }
        else
        {
            prev=current;
            current=current->next;
        }
    }
}
void StringList::RemoveAfter(std::string i)
{
    ListItem *prev = NULL;
    ListItem *good = first;
    while (good !=NULL && good->item !=i)
    {
        prev=good;
        good=good->next;
    }
    ListItem *current=NULL;
    ListItem *next=good;
    while (next)
    {
        current=next;
        next=next->next;
        delete current;
    }
}
void StringList::AddLast(std::string i)
{
    ListItem *newItem = new ListItem();
    (*newItem).item=i;
    if (last == NULL)
    {
        first=newItem;
    }
    else
    {
        last->next = newItem;
    }
    last=newItem;
}
Содержимое main.cpp:
C++
1
2
3
4
5
6
7
8
#include <stdio.h>
#include "StringList.h"
void main()
{
StringList mylist();
ListItem x;
mylist->AddLast("abcde");
}
Что же все-таки не так? На различные принципиальные моменты внимание прошу не обращать, а только на собственно ошибку
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru