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

Подскажите пример контейнерного класса-массив и список - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Ошибки вроде бы нет, но работает не правильно! http://www.cyberforum.ru/cpp-beginners/thread548435.html
Христос Воскресе! Вот код: #include <iostream> #include <conio.h> #include <clocale> #include <cstdlib> using namespace std; int main()
C++ Что здесь не так? // xc.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" // Таблица функции #include<math.h> #include <stdio.h> #include<locale.h> #include <conio.h> http://www.cyberforum.ru/cpp-beginners/thread548433.html
//unresolved external symbol "void_cdecl fun1(int,int)" (&fun1@@YAXHH@Z) referenced in function_main C++
создал проект, нужно ввести двумерный массив, потом создать функцию которая будет проверять есть ли в массиве хотя бы одна строка, содержащая положительный элемент, и находить ее номер, а затем менять знаки элементов предыдущей строки #include <stdio.h> #include <conio.h> #include <iostream> using namespace std; void fun1(int, int); void main()
Сортировка структуры выбором C++
Есть структура фамилий. нужно реализовать сортировку фамилий методом выбора по алфовиту. Помогите пожайлусто. Чтото не выходит немогу понять что. //--------------------------------------------------------------------------- #include <vcl.h> #include <conio.h> #include <string.h> #include <iostream.h> #include <stdio.h> #pragma hdrstop
C++ Заполнение массива структур, методы cin-а http://www.cyberforum.ru/cpp-beginners/thread548367.html
Задача такая: спроектировать структуру car, в которой хранится название производителя и год выпуска, пользователь вводит количество элементов структуры, с помощью new создается динамический массив структур, и далее пользователь заполняет структуру данными. #include "stdafx.h" #include <iostream> using namespace std; const int s = 40; struct car { char name;
C++ Почему событие eof() файлового потока наступает очень поздно? Какова вообще его логика? Вот пример, если в папке с программой разместить файл input.txt с числами "1 2 3", то в векторе sequence будут следующие элементы: 1 2 3 3 Почему так происходит? Как этого избежать? #include <iostream> #include <vector> #inckude <fstream> int main() { std::vector<long> sequence; подробнее

Показать сообщение отдельно
Schizorb
 Аватар для Schizorb
508 / 460 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
15.04.2012, 08:51     Подскажите пример контейнерного класса-массив и список
gore-lykovoe, т.е. ты хочешь создать свой класс, вместо того, чтобы использовать уже готовый? А вообще контейнеры STL несложно использовать, вот простой пример со списком (list):

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
include <iostream>
#include <list>
 
int main()
{
    std::list<int> intList; // создём список с элементами типа int
    
    // заносим элементы в начало списка
    intList.push_front(3);
    intList.push_front(2);
    intList.push_front(1);
 
    // заносим элементы в конец списка
    intList.push_back(4);
    intList.push_back(5);
    intList.push_back(6);
 
    // печатаем элементы с помощью итератора
    for(std::list<int>::iterator iter = intList.begin(); iter != intList.end(); ++iter)
        std::cout << *iter << " ";
    
    return 0;
}
Единственное, что тут необычно - доступ к элементам с помощью итераторов. А вот другой контейнер вектор (vector) поддерживает индексацию, как обычный массив, с ним работать можно ещё "привычнее":

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
#include <iostream>
#include <vector>
 
int main()
{
    std::vector<int> intVector; // создём вектор с элементами типа int
 
    // заносим элементы в конец списка
    intVector.push_back(1);
    intVector.push_back(2);
    intVector.push_back(3);
    intVector.push_back(4);
    intVector.push_back(5);
 
    // печатаем элементы с помощью итератора
    for(std::vector<int>::iterator iter = intVector.begin(); iter != intVector.end(); ++iter)
        std::cout << *iter << " ";
        
    // изменяем значение элемента с индексом 3
    intVector[3] = 1000;
        
    std::cout << "\n";
    // печатаем элементы с помощью индексов
    for(int i = 0; i < intVector.size(); ++i)
        std::cout << intVector[i] << " ";
    
 
    return 0;
}
Но это самое простое, в этой теме вообще много чего надо изучить, я сам только на подступах
 
Текущее время: 23:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru