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

Возврат моего объекта List из функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Создать блок схему http://www.cyberforum.ru/cpp-beginners/thread1023767.html
#include <iostream> #include <iomanip> using namespace std; int main() { setlocale(0, "rus"); const int N = 5; // размер матрицы const int M = 5; int i, j;
C++ Написать программу, рекурсивно вычисляющую сумму Найти сумму ряда с точностью \varepsilon, общий член которого равен {a}_{n}=\frac{n!}{(2n)!}. Точность считается достигнутой, если следующий член последовательности меньше заданного \varepsilon. http://www.cyberforum.ru/cpp-beginners/thread1023759.html
Составить программу вычисления выражения и вывода полученного результата на экран C++
Составить программу вычисления выражения и вывода полученного результата на экран. Соответствующие исходные данные ввести с клавиатуры. Использую MS Visual C++
Создать структуру с данными по таблице . C++
Всем привет не буду утаивать сразу скажу мне нужна помощь С++ В общем всё, что я пока умею это вывести массив в консоле рандомно либо из файла либо вручную но у меня близко очень сессия а я косил и мне нужно решить 5 задач за пару дней (они очень простые но т.к я косил пары без посторонней помощи не справляюсь...) 1)Создать структуру с данными по таблице . Добавить и вычислить в структуре...
C++ Как открыть cmd с компилятором? http://www.cyberforum.ru/cpp-beginners/thread1023712.html
Я знаю как компилировать и как открывать компилятор в командной строке. Для этого я открываю файл от MS Visual C++ vcvars32.bat. Но как я могу сделать так, чтобы я открывал командную строку и там уже был открыт компилятор? Просто этот файл находится далеко и мне лень каждый раз это вводить.
C++ Анализ и разбиение символьной строки на слова всем привет) возникла проблема и как с ней справится не пойму( #include <iostream> #include <ctype.h> #include <string.h> bool GetWord(char* theString, char* word, int& wordOffset); int main() { подробнее

Показать сообщение отдельно
Suares
0 / 0 / 0
Регистрация: 28.02.2013
Сообщений: 106

Возврат моего объекта List из функции - C++

30.11.2013, 13:48. Просмотров 442. Ответов 3
Метки (Все метки)

Ребята, вот есть у меня такой 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
24
25
26
27
28
29
30
31
32
template<class T> 
class List
{
public:
    typedef T* iterator;
    typedef const T* const_iterator;
    typedef T value_type;
 
    List();
    ~List();
 
    void push_front(const T& val);
    void push_back(const T& val);
    void insertAt(size_t id, const T& val);
 
    bool pop_front();
    bool pop_back();
 
    bool isEmpty() const { return first == 0; }
    void print() const;
    void rprint() const;
 
    size_t size() { return last - first; }
 
    List& operator=(const List& l);
 
private:
    Node<T>* first;
    Node<T>* last;
 
    Node<T>* getNewNode(const T& val);
};
И я хочу вернуть List из функции split:

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
int main()
{
    std::string str = "Hello my name is Slava";
 
    List<std::string> l = split(str);
 
    return 0;
}
 
List<std::string> split(std::string& s)
{
    List<std::string> sl;
    std::string::iterator first = s.begin();
 
    while(first != s.end())
    {
        first = std::find_if(first, s.end(), is_not_space);
        std::string::iterator second = std::find_if(first, s.end(), is_space);
 
        if(first != s.end())
            sl.push_back(std::string(first, second));
        first = second;
    }
 
    return sl;
}
В итоге у меня вылазит окошко "прекращение работы программы".
Возможно у меня функция operator= не правильно написана:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
List<T>& List<T>::operator=(const List<T>& l)
{
    if(this != &l)
    {
        Node<T>* current = l.first;
        while(current != 0)
        {
            this->push_back(current->d);
            current = current->next;
        }
    }
 
    return *this;
}
Буду благодарен за любую подсказку
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru