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

Программная реализация динамического списка динамических списков - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Отсортировать элементы массива: отрицательные – в начало массива, положительные – в конец http://www.cyberforum.ru/cpp-beginners/thread244768.html
написать две проги...Желательно в Microsoft Visual Studio. Исходный массив инициализировать случайным образом, предусмотрев возможность введения с клавиатуры размерности обрабатываемого массива. Исходный массив и полученный результат вывести на экран. Это я сделала, помогите, плиз, остальное... Основные этапы работы с массивом оформить в виде функций. В случае последовательного просмотра...
C++ Сложение векторов в структуре Надо сложить 2 вектора использую функции структуры. Пока дошел до этого варианта: #include "stdafx.h" #include <iostream> #include <math.h> #include <string> using namespace std; float x,y,z,xi,yi,zi,zj,xj,yj; struct vector { vector (float px=0, float py=0,float pz=0) { http://www.cyberforum.ru/cpp-beginners/thread244766.html
C++ MVS 2010
Пишу на Microsoft visual studio 2010 на с++. Проблема такая: После сборки программы и сохранения компонентов беру ексешник в папочке "debug". Запускаю - все работает, но стоит мне этот екзешник запустить на другом компьютере - возникает ошибкак. В чем дело ?
оператор enum найти все черные пятницы месяца C++
Используя перечисляемый тип, определить тип «дни недели» и выдать все «черные» пятницы этого года (т.е. число месяца равно13, а день недели – пятница). c enum не получается, только если так допустим #include <iostream> #include <string> using namespace std; int main()
C++ Вычисление значения функции http://www.cyberforum.ru/cpp-beginners/thread244735.html
вот вид на листе бумаги,задание 1
C++ Сделать описание программы на классы Нужно составить описание этой программы #ifndef complexH #define complexH #include <math.h> //--------------------------------------------------------------------------- //Mantis and the exponential (2) class complex_2{ protected: int mant,exp; подробнее

Показать сообщение отдельно
lemegeton
 Аватар для lemegeton
2909 / 1338 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
18.02.2011, 23:38     Программная реализация динамического списка динамических списков
Классы, шаблоны классов, указатели.
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
template <class Tp_>
class List {
 public:
  typedef Tp_  ValueType;
  class Node {
   public:
    explicit Node(ValueType data, Node *prev = NULL,
             Node *next = NULL) : next_(next), prev_(prev), data_(data) {
      if (prev_ != NULL) prev_->next_ = this;
      if (next_ != NULL) next_->prev_ = this;
    }
    ValueType &data() { return data_; }
    void  data(const ValueType &data) { data_ = data; }
    Node *next() { return next_; }
    void  next(Node *value) { next_ = value; }
    Node *prev() { return prev_; }
    void  prev(Node *value) { next_ = value; }
    operator ValueType() { return data_; }
   private:
    Node *next_;
    Node *prev_;
    ValueType data_;
  };
  List() : first_(NULL), size_(0) {}
  ~List() { Clear(); }
  void Clear() {
    if (first_ == NULL) return;
    Node *next;
    while (first_ != NULL) {
      next = first_->next();
      delete first_;
      first_ = next;
    }
    size_ = 0;
  }
  int Size() const { return size_; }
  void PushFront(const ValueType &value) {
    Node *new_node = new Node(value, NULL, first_);
    first_ = new_node;
    ++size_;
  }
  void PushBack(const ValueType &value) {
    Node *last_node = LastNode();
    Node *new_node = new Node(value, last_node, NULL);
    if (first_ == NULL) first_ = new_node;
    ++size_;
  }
  ValueType &operator[](int n) {
    return GetNode(n)->data();
  }
 private:
  Node *GetNode(int n) {
    Node *result = first_;
    while (n-- > 0) result = result->next();
    return result;
  }
  Node *LastNode() {
    Node *result = first_;
    while (result != NULL && result->next() != NULL)
      result = result->next();
    return result;
  }
  Node *first_;
  size_t size_;
};
 
int main(int argc, char *argv[]) {
  List< List<int> > a; \\ двусвязный список двусвязных списков целых
 
  return 0;
}
 
Текущее время: 09:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru