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

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

Войти
Регистрация
Восстановить пароль
 
lerka1996
2 / 2 / 0
Регистрация: 04.03.2015
Сообщений: 76
#1

Реализуйте ScopedPtr - C++

20.10.2015, 17:14. Просмотров 784. Ответов 5
Метки нет (Все метки)

Реализуйте ScopedPtr, который будет работать с указателями на базовый класс Expression. В этом задании вам требуется реализовать методы get, release и reset, операторы * и -> так, как это было описано в предыдущем степе. А также реализуйте конструктор ScopedPtr от указателя на Expression.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.10.2015, 17:14     Реализуйте ScopedPtr
Посмотрите здесь:

Реализуйте код - C++
помогите плиз реализовать задачу https://www.e-olymp.com/ru/contests/7631/problems/63155 вот разбор этой задачи...

Реализуйте макрос - C++
Реализуйте макрос MAX от трёх параметров, который присваивает целочисленной (int) переменной, переданной в качестве третьего аргумента,...

Реализуйте и протестируйте функцию - C++
Реализуйте и протестируйте функцию: template <class T> void Rear2Head(Node<T> * &head); перемещающую последний элемент связного...

Реализуйте однонаправленный список - C++
Объясните пожалуйста, что происходит в определённой строке.Хотя бы подскажите в каких строчках происходит добавление элементов, просмотр...

Реализуйте класс SharedPtr - C++
Уделите особое внимание "граничным случаям" — нулевой указатель, присваивание самому себе, вызов reset на нулевом SharedPtr и...

Реализуйте функцию swap_min - C++
Функция принимает на вход двумерный массив целых чисел, ищет в этом массиве строку, содержащую наименьшее среди всех элементов массива...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SuperKir
20.10.2015, 17:19
  #2

Не по теме:

Почувствуй себя экстрасенсом..

ture
438 / 331 / 123
Регистрация: 27.11.2014
Сообщений: 1,038
20.10.2015, 17:22     Реализуйте ScopedPtr #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
struct Expression;
struct Number;
struct BinaryOperation;
 
struct ScopedPtr {
    // реализуйте следующие методы:
    //
    explicit ScopedPtr(Expression *ptr = 0) {
        this->ptr_=ptr;
    }
    ~ScopedPtr() {
        delete  ptr_;
    }
    Expression* get() const {
        return ptr_;
    }
    Expression* release() {
        Expression * ptr = this->ptr_;
        this->ptr_ = NULL;
        return ptr;
    }
    void reset(Expression *ptr = 0) {
        delete this->ptr_;
        this->ptr_ = ptr;
    }
    Expression& operator*() const {
        return *ptr_;
    }
    Expression* operator->() const {
        return ptr_;
    }
private:
    ScopedPtr& operator=(const ScopedPtr & other) {} //оператор присваивания
    ScopedPtr(const ScopedPtr & other) {} //конструктор копирования
    Expression *ptr_;
};
makemelaugh
6 / 6 / 2
Регистрация: 12.12.2013
Сообщений: 21
Завершенные тесты: 1
20.10.2015, 22:08     Реализуйте ScopedPtr #4
Не понимаю, как вы друг друга понимаете) Где класс Expression? Но ответ есть...)
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
20.10.2015, 22:51     Реализуйте ScopedPtr #5
ture, тело для копиконструктора и оп.присваивания не требуется, достаточно просто объявления в приватной секции. А ещё лучше = delete.
Не оч.понял смысл использования this при наличии суффикса в имени члена класса.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.10.2015, 09:02     Реализуйте ScopedPtr
Еще ссылки по теме:

Реализуйте программу, отрисовывающую окружность - C++
Спроектируйте и реализуйте программу, отрисовывающую окружность, которая плавно перетекает в цилиндр; цвет периодически изменяется. ...

Реализуйте собственный класс строки - C++
Задание: Строка Реализуйте собственный класс строки для использования в языке C++. Класс должен поддерживать наиболее часто...

Разработайте и реализуйте абстрактный тип данных - C++
Помогите пожалуйста с задачей. Разработайте и реализуйте абстрактный тип данных для представления календаря. Он должен представлять...

Реализуйте программу решения квадратного уравнения - C++
Реализуйте программу решения квадратного уравнения с обязательной проверкой существования действительных корней, а также кратного корня....

Реализуйте списочную структуру в виде класса - C++
Реализуйте списочную структуру в виде класса.Динамический двусвязный список (операции: добавить элемент после данного, удалить данный...

Реализуйте представление дерево в виде списка ребер в С++ - C++
Реализуйте представление дерево в виде списка ребер (массива одно связанных списков) С режимами работы: 1)Добавление элементов. ...


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

Или воспользуйтесь поиском по форуму:
ture
438 / 331 / 123
Регистрация: 27.11.2014
Сообщений: 1,038
21.10.2015, 09:02     Реализуйте ScopedPtr #6
makemelaugh, мы друг друга не понимаем без "ключа". Все задачи дают в курсе на stepic. Я гоняю по расписанию и ищу задачу, которую решал раньше с похожим описанием. Если нашел, то выкладываю сюда.

Добавлено через 2 минуты
Tulosba, я раньше на шарп учился, потихоньку отучаю себя от явных изъянов в коде.
Yandex
Объявления
21.10.2015, 09:02     Реализуйте ScopedPtr
Ответ Создать тему
Опции темы

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