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

Использование placement-new в перегруженном операторе присваивания - C++

Восстановить пароль Регистрация
Другие темы раздела
Visual C++ Нужно переделать програму с С++ Builder XE4 в С++ visual http://www.cyberforum.ru/cpp/thread1456966.html
include <StrUtils.hpp> void __fastcall TForm1::Button1Click(TObject *Sender) { String s = ""; TStringDynArray arr(SplitString(Edit1->Text, " ")); for(int i = 0; i < arr.Length; i++) { s += String().sprintf(L"(%s) - длина: %d\n", arr, arr.Length()); }
C++ Помогите понять условие задачи: "Ввести текст с разделителями и отредактировать его" Всем доброго времени суток! Может конечно не в ту тему пишу, но всё же думаю вы мне поможете. Прислали задачку из книжки, попросили помочь. Сама задача: Ввести текст с клавиатуры, число строк которого заранее неизвестно, а также массив разделителей. Ввод текста прекращается, если введена строка, не содержащая ни одного символа из указанного пользователем набора. Переставить местами строки, в... http://www.cyberforum.ru/cpp/thread1456929.html
помагите ришить с++ задачи C++
1. Написать программу, которая удаляет из введенной с клавиатуры строки начальные пробелы. 2. Ввести фамилию, имя и отчество одной строкой. Определить длину каждого слова. Вывести фамилию в обратном порядке.
Ошибки SFML: unresolved external symbol SFML
Пишу курсовую работу типа платформер. Вроде ровно подключил sfml, но тем не менее вижу вот такие ошибки В чем может быть причина их возникновения?
C++ Нахождение несобственного интеграла http://www.cyberforum.ru/cpp/thread1456361.html
Стоит задача написать программу для нахождения несобственного интеграла. По сути поискав, я пришёл к выводу, что всё что требуется это написать эту формулу на языке с++ Может кто помочь с бесконечностью, не совсем понятно как её использовать. Либо может кто сможет перевести эту формулу. Заранее благодарен за помощь
C++ Из Паскаля в С++ 2: begin if (d=28) then begin m:=3; d:=1; end else if d<28 then inc(d); end; 4, 6, 9, 11: подробнее

Показать сообщение отдельно
DrOffset
6785 / 3996 / 917
Регистрация: 30.01.2014
Сообщений: 6,816
25.05.2015, 00:16     Использование placement-new в перегруженном операторе присваивания
FraidZZ, Для реализации твоей задумки есть куда более простое и красивое решение. Называется copy-and-swap idiom.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
class T {
    int *arr;
    size_t sz;
public:
    //.......
 
    T& operator = (const T& ref) {
        if (this != &ref)
        {
            T(ref).swap(*this);
        }
        return *this;
    }
 
    //......
 
private:
    void swap(T & t)
    {
        std::swap(arr, t.arr);
        std::swap(sz, t.sz);
    }
};
И данные старые удалим и конструктор копирования в деле.
 
Текущее время: 04:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru