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

Трабла с конструктором - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Построить блок-схему. Даны числа:а,в и с.Если их полусумма больше нуля,то наименьшее из чисел возвести в квадрат http://www.cyberforum.ru/cpp-beginners/thread1121897.html
Даны числа:а,в и с.Если их полусумма больше нуля,то наименьшее из чисел возвести в квадрат.В противном случае все отрицательные числа из них уменьшить в 2 раза.Вывести все числа.
C++ Циклический алгоритм.пожалуйста напишите программу.и если не сложно блок-схему два числа,действительное x и натуральное n=>10,вводятся с клавиатуры.вычислить значение:sin(x)+sin(x^2)+sin(x^3)+...+sin(x^n) http://www.cyberforum.ru/cpp-beginners/thread1121888.html
C++ Умножение массивов
Всем привет.. Помогите, пожалуйста с программой: #include <iostream> #include <conio.h> #include <iomanip> #include <stdio.h> using namespace std; int main() { setlocale(LC_ALL, "Russian");
Разработать программу выполнения арифметических операций в двоичной системе счисления C++
Разработать программу выполнения арифметических операций в двоичной системе счисления. Исходные данные должны вводиться пользователем с клавиатуры, результат должен выводиться на экран.Разрядность результата 16(размер числа), и результат представить в виде дополнительного кода. Пожалуйста помогите реализовать!
C++ Обработка целочисленных массивов http://www.cyberforum.ru/cpp-beginners/thread1121880.html
Помогите с задачей кто может, если не трудно: 1) Задан массив Z(m) целых чисел. Определить, содержит ли массив серии из подряд стоящих простых чисел. Если да, то посчитать количество таких серий. Удалить из массива все двузначные числа. Определить, изменилось ли количество серий. В программе написать функции: вычисления количества серий их подряд стоящих простых элементов, удаления элемента....
C++ Специализация шаблона для char * (рабочий код, но непонятно почему) Явное определение специализации – это такое определение, в котором за ключевым словом template следует пара угловых скобок <>, а за ними –определение специализированного шаблона: template <> тип_возврата функция <параметры шаблона> (параметры_функции) {реализация} Тогда почему код работает, когда в параметре шаблона стоит char ? #include <iostream> using namespace std; template <class T>... подробнее

Показать сообщение отдельно
Aндерсон_256
0 / 0 / 0
Регистрация: 02.11.2013
Сообщений: 16
17.03.2014, 17:24     Трабла с конструктором
Компилятор никаких ошибок не выдает, но программа не запускается.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
using namespace std;
class Cpmv
{
public:
    struct Info
    {
        string qcode;
        string zcode;
    };
private:
    Info*pi;
public:
    Cpmv();
    Cpmv(string q, string z);
    Cpmv(const Cpmv&c);
    Cpmv(Cpmv&&c);
    ~Cpmv();
    Cpmv& operator=(const Cpmv&cp);
    Cpmv& operator=(Cpmv&&mv);
    Cpmv operator+(const Cpmv&obj)const;
    void Display()const;
};
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include<iostream>
#include"h.h"
using namespace std;
Cpmv::Cpmv()
{
 pi->qcode = "none";
 pi->zcode = "none";
}
 
Cpmv::Cpmv(string q, string z)
{
    pi->qcode = q;
    pi->zcode = z;
}
    Cpmv::Cpmv(const Cpmv&c)
    {
        cout << "Copy constructor: \n";
        pi->qcode = c.pi->qcode;
        pi->zcode = c.pi->zcode;
    }
    Cpmv::Cpmv(Cpmv&&c)
    {
        cout << "Move constructor \n";
        pi->qcode.assign(c.pi->qcode.data());
        c.pi->qcode=" ";
        pi->zcode.assign(c.pi->zcode.data());
        c.pi->zcode= " ";
 
    }
    Cpmv::~Cpmv()
    {
    }
    Cpmv& Cpmv::operator=(const Cpmv&cp)
    {
        cout << "Assigning operator \n";
        Cpmv tmp;
        tmp.pi->qcode =cp.pi->qcode;
        tmp.pi->zcode = cp.pi->zcode;
        return tmp;
    }
    Cpmv& Cpmv::operator=(Cpmv&&mv)
    {
        cout << "Assigning and moving operator \n";
        Cpmv temp;
        temp.pi->qcode.assign(mv.pi->qcode.data());
        mv.pi->qcode = " ";
        temp.pi->zcode.assign(mv.pi->zcode.data());
        mv.pi->zcode = " ";
        return temp;
    }
    Cpmv Cpmv::operator+(const Cpmv&obj)const
    {
        Cpmv temp;
        temp.pi->qcode = pi->qcode+obj.pi->qcode;
        temp.pi->zcode = pi->zcode+obj.pi->zcode;
        return temp;
    }
    void Cpmv::Display()const
    {
        cout << "Qcode: " << pi->qcode << endl;
        cout << "Zcode: " << pi->zcode << endl;
    }
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
#include <iostream>
#include"h.h"
#include<string>
using namespace std;
int main()
{
    string o = "Good one";
    string d = "Bad one";
    Cpmv one(o,d);
    cout << "Showing one: \n";
    one.Display();
    cout << endl;
    Cpmv two(one);
    cout << "Showing two: \n";
    two.Display();
    cout << endl;
    Cpmv three(one+two);
    cout << "Showing three: \n";
    three.Display();
    cout << endl;
    Cpmv four = two + three;
    cout << "Showng four: \n";
    four.Display();
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 14:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru