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

Работа со стандартной библиотекой List.H - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 29, средняя оценка - 4.90
Chertenok_n_13
 Аватар для Chertenok_n_13
203 / 109 / 39
Регистрация: 14.03.2011
Сообщений: 508
01.04.2012, 13:47     Работа со стандартной библиотекой List.H #1
Помогите подключить стандартную библиотеку шаблонов List.H (с++ 3.1 для дос) и создать объект для структуры.
Брала рабочие примеры, но даже там выдает ошибки.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
retmas
Жарю без масла
803 / 685 / 143
Регистрация: 13.01.2012
Сообщений: 1,580
01.04.2012, 22:52     Работа со стандартной библиотекой List.H #21
могу только повторить: не уверен, что там шаблон.
а лучше всего пришлите-ка тот файлик list.h
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Chertenok_n_13
 Аватар для Chertenok_n_13
203 / 109 / 39
Регистрация: 14.03.2011
Сообщений: 508
01.04.2012, 22:55  [ТС]     Работа со стандартной библиотекой List.H #22
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
/*------------------------------------------------------------------------*/
/*                                                                        */
/*  LIST.H                                                                */
/*                                                                        */
/*  Copyright Borland International 1991, 1992                            */
/*  All Rights Reserved                                                   */
/*                                                                        */
/*------------------------------------------------------------------------*/
 
#if !defined( __LIST_H )
#define __LIST_H
 
#if !defined( __MEMMGR_H )
#include <MemMgr.h>
#endif  // __MEMMGR_H
 
#if !defined( __COLLECT_H )
#include <Collect.h>
#endif  // __COLLECT_H
 
#pragma option -Vo-
#if defined( __BCOPT__ ) && !defined( _ALLOW_po )
#pragma option -po-
#endif
 
_CLASSDEF(List)
_CLASSDEF(ListIterator)
 
class _CLASSTYPE ListBlockInitializer
{
 
protected:
 
    ListBlockInitializer();
    ~ListBlockInitializer();
 
    static unsigned count;
 
};
 
class _CLASSTYPE List : public Collection, private ListBlockInitializer
{
 
public:
 
    List() :
        headEntry( 0, &tailEntry ),
        tailEntry( 0, &tailEntry ),
        head(&headEntry),
        tail(&tailEntry),
        itemsInContainer(0)
        {
        }
 
    virtual ~List()
        {
        flush();
        }
    
    Object _FAR & peekHead() const
        {
        return ptrToRef(head->next->data);
        }
 
    void add( Object _FAR & );
    virtual void detach( Object _FAR &, DeleteType = NoDelete );
    virtual void flush( DeleteType = DefDelete );
 
    virtual int isEmpty() const
        {
        return itemsInContainer == 0;
        }
 
    virtual countType getItemsInContainer() const
        {
        return itemsInContainer;
        }
 
    virtual ContainerIterator _FAR & initIterator() const;
 
    virtual classType isA() const
        {
        return listClass;
        }
 
    virtual char _FAR *nameOf() const
        {
        return "List";
        }
 
private:
 
    class _CLASSTYPE ListElement
    {
 
    public:
 
        ListElement( Object _FAR *o, ListElement _FAR *n = 0 )
            {
            data = o; next = n;
            }
 
    private:
 
        ListElement _FAR *next;
        Object _FAR *data;
 
        void _FAR *operator new( size_t sz )
            {
            PRECONDITION( mgr != 0 );
            return mgr->allocate( sz );
            }
        void operator delete( void _FAR *b )
            {
            PRECONDITION( mgr != 0 );
            mgr->free( b );
            }
 
        static MemBlocks _FAR *mgr;
 
        friend class List;
        friend class ListIterator;
        friend class ListBlockInitializer;
 
    };
 
    ListElement _FAR *head;
    ListElement _FAR *tail;
 
    ListElement headEntry, tailEntry;
 
    unsigned itemsInContainer;
 
    ListElement _FAR *findPred( const Object _FAR & o );
 
    friend class ListIterator;
    friend class ListBlockInitializer;
 
};
 
inline ListBlockInitializer::ListBlockInitializer()
{
    PRECONDITION( count != UINT_MAX );
    if( count++ == 0 )
        List::ListElement::mgr = 
            new MemBlocks( sizeof(List::ListElement), 20 );
}
 
inline ListBlockInitializer::~ListBlockInitializer()
{
    PRECONDITION( count != 0 );
    if( --count == 0 )
        {
        delete List::ListElement::mgr;
        List::ListElement::mgr = 0;
        }
}
 
class _CLASSTYPE ListIterator : public ContainerIterator
{
 
public:
 
    ListIterator( const List _FAR & );
    virtual ~ListIterator();
 
    virtual operator int();
    virtual Object _FAR & current();
    virtual Object _FAR & operator ++ ( int );
    virtual Object _FAR & operator ++ ();
    virtual void restart();
 
private:
 
    List::ListElement _FAR *currentElement;
    List::ListElement _FAR *startingElement;
};
 
inline ListIterator::ListIterator( const List _FAR & toIterate )
{
    startingElement = currentElement = toIterate.head->next;
}
 
#if defined( __BCOPT__ ) && !defined( _ALLOW_po )
#pragma option -po.
#endif
#pragma option -Vo.
 
#endif  // __LIST_H
retmas
Жарю без масла
803 / 685 / 143
Регистрация: 13.01.2012
Сообщений: 1,580
01.04.2012, 23:01     Работа со стандартной библиотекой List.H #23
там не шаблон, пишите просто
C++
1
List mylist;
Nekto
342 / 287 / 10
Регистрация: 23.03.2012
Сообщений: 838
01.04.2012, 23:04     Работа со стандартной библиотекой List.H #24
я, кажется, понял в чем проблема Options - Directories.
\CLASSLIB\INCLUDE - тут list.h находится
retmas
Жарю без масла
803 / 685 / 143
Регистрация: 13.01.2012
Сообщений: 1,580
01.04.2012, 23:05     Работа со стандартной библиотекой List.H #25
код, что вы писали раньше - для стандартного list. здесь не тот случай. вобщем, наверно намучаетесь вы прежде, чем поймете как его использовать.
Nekto
342 / 287 / 10
Регистрация: 23.03.2012
Сообщений: 838
01.04.2012, 23:10     Работа со стандартной библиотекой List.H #26
подобавлял папки в настройках, скомпилилось
Миниатюры
Работа со стандартной библиотекой List.H  
Chertenok_n_13
 Аватар для Chertenok_n_13
203 / 109 / 39
Регистрация: 14.03.2011
Сообщений: 508
01.04.2012, 23:12  [ТС]     Работа со стандартной библиотекой List.H #27
Цитата Сообщение от retmas Посмотреть сообщение
код, что вы писали раньше - для стандартного list. здесь не тот случай. вобщем, наверно намучаетесь вы прежде, чем поймете как его использовать.
уф... выходит у меня и в си билдер тоже нет стандартного... ибо там он точно такой же.. даже размер тот же..

я, кажется, понял в чем проблема Options - Directories.
\CLASSLIB\INCLUDE - тут list.h находится
да не, эту проблему уже давно решили... у меня библиотека подключается нормально...
retmas
Жарю без масла
803 / 685 / 143
Регистрация: 13.01.2012
Сообщений: 1,580
01.04.2012, 23:27     Работа со стандартной библиотекой List.H #28
пробуйте, смотрите на интерфейс класса, что он предлагает. пользуйтесь, раз уж вам нужно использовать его. если не получится, пишите задание. посмотрим
Chertenok_n_13
 Аватар для Chertenok_n_13
203 / 109 / 39
Регистрация: 14.03.2011
Сообщений: 508
01.04.2012, 23:29  [ТС]     Работа со стандартной библиотекой List.H #29
спасибо, буду пытаться
Taras_Z
 Аватар для Taras_Z
100 / 84 / 2
Регистрация: 27.10.2010
Сообщений: 534
Записей в блоге: 2
02.04.2012, 08:34     Работа со стандартной библиотекой List.H #30
а может выбросить с++ 3.1 для дос и поставить VS 2010?
Chertenok_n_13
 Аватар для Chertenok_n_13
203 / 109 / 39
Регистрация: 14.03.2011
Сообщений: 508
02.04.2012, 11:20  [ТС]     Работа со стандартной библиотекой List.H #31
да если б можно было... студенты... нам сказано на чем, мы на том и делаем)
Taras_Z
 Аватар для Taras_Z
100 / 84 / 2
Регистрация: 27.10.2010
Сообщений: 534
Записей в блоге: 2
02.04.2012, 11:26     Работа со стандартной библиотекой List.H #32
ну да
Nekto
342 / 287 / 10
Регистрация: 23.03.2012
Сообщений: 838
02.04.2012, 11:30     Работа со стандартной библиотекой List.H #33
А спросить можно ли писать в VS 2010 у преподавателя пробовали?
retmas
Жарю без масла
803 / 685 / 143
Регистрация: 13.01.2012
Сообщений: 1,580
02.04.2012, 15:30     Работа со стандартной библиотекой List.H #34
Цитата Сообщение от Nekto Посмотреть сообщение
А спросить можно ли писать в VS 2010 у преподавателя пробовали?
а толку, если быть может скомпиленная в VS 2010 прога при показе преподу на учебной машине не запустится?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.04.2012, 15:36     Работа со стандартной библиотекой List.H
Еще ссылки по теме:

Работа с библиотекой <fstream> C++
Работа с STL list + пропись List.h C++
Работа со статической lib библиотекой C++

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

Или воспользуйтесь поиском по форуму:
Nekto
342 / 287 / 10
Регистрация: 23.03.2012
Сообщений: 838
02.04.2012, 15:36     Работа со стандартной библиотекой List.H #35
Цитата Сообщение от retmas Посмотреть сообщение
а толку, если быть может скомпиленная в VS 2010 прога при показе преподу на учебной машине не запустится?
Для таких случаев обычно есть на группу несколько человек с ноутами =)
И не могут же быть там настолько допотопные машины, чтоб нельзя было запустить екзешник с встроенными библиотеками
Yandex
Объявления
02.04.2012, 15:36     Работа со стандартной библиотекой List.H
Ответ Создать тему
Опции темы

Текущее время: 02:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru