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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 22, средняя оценка - 4.59
Ilou
9 / 9 / 0
Регистрация: 29.03.2007
Сообщений: 19
#1

Конструкторы в списках и конфликт имён - C++

28.09.2007, 13:45. Просмотров 2650. Ответов 1
Метки нет (Все метки)

Здравтсвуйте, уважаемые программисты, меня волнуют следующие вопросы:
1) Мне нужны примеры применения конструкторов в списках. Я нашёл в книге, но там очень замудрённо...
C++
1
2
3
4
5
6
7
8
9
10
11
explicit list (const Allocator &a = Allocator () );
//конструктор создаёт пустой список
explicit list (size_type num, const T &val=T(), const Allocator &a=Allocator());
//создаёт список, состоящий из num элементов, имеющих значение val, 
//причём это значение можно задавать по умолчанию
list (const listT, Allocator; &ob);
//создаёт список, содержащий элемент объекта ob
template class InIter; list(InIter start, 
                             Initer end, const Allocator &a=Allocator());
//формирует список, состоящий из элементов, 
//лежащих в диапазоне, заданном интервалами start и end.
Представьте примеры попроще или упростите, если это возможно, эти.

2)В чём состоит проблема конфликта имён в С++ и как она решается? Почему используют например top и top_of, если top это вообще операция со стэком и т.п.
C++
1
2
3
4
5
6
void reset () {top=empty;}
    void push (char c); char pop ();
    char top_of () const;
    boolean empty () const;
    boolean full () const;
};
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.09.2007, 13:45     Конструкторы в списках и конфликт имён
Посмотрите здесь:

Очередь в списках C++
Вопрос: что такое ключ в списках? C++
C++ Литература о Связаные списках
C++ Немного о списках
C++ Ошибка в списках
Конфликт имён C++
C++ Ошибка в списках
Освобождение памяти в списках C++
Конфликт пространств имён C++
Найти причины и способы исправления ошибки (конфликт имён?) C++
C++ Ошибка в удалении повторяющихся данных в списках
Нужно найти ошибку в списках C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vourhey
Почетный модератор
6473 / 2248 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
30.09.2007, 20:59     Конструкторы в списках и конфликт имён #2
Вот пример, поясняющий, в чем состоит проблема конфликта имен в С++:
Код
#include  stdlib.h;
#include  iostream;

using namespace std;

int rand(void)
{
	return 0;
}

int main ()
{
	coutrand();
}
Эта проблема решается просто. Даешь имя, которого ни у кого нет и все. Или в пространство имен помещаешь свою функцию, или что-нибудь там еще. К примеру так:
Код
#include  stdlib.h;
#include  iostream;

using namespace std;

int rand1(void)
{
	return 0;
}

int main ()
{
	coutrand1();
}
Или так:
Код
#include  stdlib.h;
#include  iostream;

using namespace std;

namespace MySpace
{
	int rand(void)
	{
		return 0;
	}
}

int main ()
{
	coutMySpace::rand()endl;
	coutrand();
}
А насчет конструкторов в списках я так и не понял, что там надо. В принципе, все примеры, что ты тут привел работают с шаблонами. В них ничего сложного нет. Почитай про STL, тогда поймешь код.
Yandex
Объявления
30.09.2007, 20:59     Конструкторы в списках и конфликт имён
Ответ Создать тему
Опции темы

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