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

Класс стека - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ очень глобальное определение http://www.cyberforum.ru/cpp-beginners/thread652134.html
скачал curl - там функции не добавлены в импорт, следственно в скомпилированной либе их нет. вот в чём суть проблемы надо как нибудь обявить все функции в раздел импорта как это сделать?
C++ Консольное приложение C++ не работает Всем доброго времени суток. вот начал изучать язык C++. попробовал написать простейшее консольное приложение в Visual studio 2012. Стандартный "Hello World!" получился на ура) а тут я не понимаю в чем ошибка. Суть программы состоит в том, что она слева выводит температуру по Цельсию, а справа по Фаренгейту. С шагом 20 градусов Цельсия. У меня же получается все по нулям... подскажите где я в... http://www.cyberforum.ru/cpp-beginners/thread652113.html
C++ Представление графа через вектор векторов
Есть граф, нужно записать его список смежности в вектор векторов, на практике в ВУЗе был дан алгоритм, но есть проблема программа считывает только первую строку а адальше все проскакивает, собственно вот код #include<fstream> #include<sstream> #include<iostream> #include<string> #include <vector> #include <algorithm> using namespace std; ifstream in("input.txt"); ofstream...
Функции C++ C++
Всем привет! Начал переходить на С++. Вот увидел такой кусок кода вы не прокомментируете строчку: sscanf(ch, "R%I64dC%I64d", &l, &r) == 2 Меня интересует вот, что : 2 это код ошибки? если да, то какие еще есть коды ошибок у этой и у scanf. Буду благодарен, если кините ссылку на какую нибудь статью или что -то в этом роде
C++ Code::Blocks Когда нажимаешь среднюю среднюю кнопку мыши, то вставляется содержимое буфера обмена. Как это можно изменить? http://www.cyberforum.ru/cpp-beginners/thread652098.html
И еще где найти русифицированную Code::Blocks?
C++ Указатель на тип данны Если я правильно понял то: struct Vector{ int x; int y; }Ve; Vector - тип данных такой же как int только самописный, Ve - переменная этого типа typedef Vector Vec; теперь Vec точно такой же тип данных как и Vector, непонятно правда зачем такие заморочки, нет бы всегда объявлять переменные через Vector. подробнее

Показать сообщение отдельно
yuliyayuliya28
3 / 3 / 0
Регистрация: 06.03.2011
Сообщений: 319
14.09.2012, 23:25  [ТС]     Класс стека
Цитата Сообщение от Герц Посмотреть сообщение
Занесение в стек из массива - как-то так:
C++
1
2
3
4
5
6
stack::stack( const int* data, int length )
{
    for ( top = 0; top < length; ++top ) {
        s[ top ] = data[ top ];
    }
}
Но вообще лучше использовать какой-нибудь std::vector< int >, std::list< int >.
Загрузка из файла - либо нужно указывать в начале файла, сколько в нем хранится элементов, либо сразу пользоваться стандартным контейнером, чтобы не мучаться с перевыделением памяти под массив.
Я бы сделал так:
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
#include <iostream>
#include <fstream>
#include <list>
 
stack::stack( const std::list< int >& elst )
: top( 0 )
{
    for ( std::list< int >::const_iterator it = elst.begin(); it != elst.end(); ++it ) {
        s[ top++ ] = *it;
    }
}
 
int main()
{
    std::ifstream file( "stack-data.txt" );
 
    if ( not file.is_open() ) {
        return 0;
    }
 
    std::list< int > elementList;
 
    while ( not file.eof() ) {
        int tmp;
        file >> tmp;
        elementList.push_back( tmp );
    }
 
    stack stck( elementList );
 
    //  Работа со стеком
 
    return 0;
}
Хотя, учитывая что у вас есть maxlen == 100, можно при чтении создавать временный массив автоматический с размером 100, и читать из файла пока есть что читать.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
int main()
{
    std::ifstream file( "stack-data.txt" );
 
    if ( not file.is_open() ) {
        return 0;
    }
 
    int tmpData[ 100 ];
    int tmpLen = 0;
 
    while ( not file.eof() ) {
        file >> tmpData[ tmpLen++ ];
    }
 
    stack stck( tmpData, tmpLen );
 
    //  Работа со стеком
 
    return 0;
}
Не всё понятно....а какие будут конструкторы у класса?
 
Текущее время: 10:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru