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

Найти ошибку в приведенном коде - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Интерфейс на C#, код на С++: возможно ли? http://www.cyberforum.ru/cpp-beginners/thread1076151.html
Например, мне нужна прога в с++, а интерфейс для нее сделать в с#. Возможно ли объединить эти два файла в один???
C++ Цифра из числа Доброе время суток, интересует вот такой вот вопрос, необходимо присвоить значение переменной цифру из числа, т.е есть число A=12345 и мне надо присвоить, например, переменной S пятую цифру. http://www.cyberforum.ru/cpp-beginners/thread1076120.html
C++ Макросы в enum?
Есть макросы #define angles (1<<0) #define v_angle (1<<1) #define punchangle (1<<2) Можно сделать типа такого: ? enum ( <<= 1 ) {
Подсчитать количество нечетных элементов C++
Кто что сможет помогите((( Подсчитать количество нечетных элементов.Замечание. Задачи из данного пункта решить двумя способами, используя одномерный массив, а затем двумерный. 2 Найти номер последнего максимального элемента. Замечание. Задачи из данного пункта решить, используя одномерный массив 3Поменять местами два средних столбца, если количество столбцов четное, и первый со средним...
C++ Написать перегруженные функции для вывода на экран элементов массивов статического и динамического http://www.cyberforum.ru/cpp-beginners/thread1076081.html
Здравствуйте! Нужна помощь с решением задачки :) Не могу разобраться с перегруженными функциями :( И, если можно, разъясните что к чему... Задача: Заданы элементы массива. Написать перегруженные функции для вывода на экран элементов массивов статического и динамического.
C++ Как узнать какая конфигурация решения в коде? Пытаюсь определить через код, что у меня Debug или Release, не получается отыскать нужную дерективу препроцесора. Нашел для c#, что-то вроде: #define DEBUG #if DEBUG #include "vld/vld.h" #endif На плюсах не подходит. Здравствуйте я дебил: #define DEBUG подробнее

Показать сообщение отдельно
Faoxis
6 / 6 / 0
Регистрация: 11.04.2012
Сообщений: 114
20.01.2014, 10:11  [ТС]
Решил проблемы так (если честно - сам не понял как) :
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 <cstring>
#include <cstdlib>
using namespace std; 
 
class strtype {
char *p;
int len;
public:
strtype(char *ptr); 
void operator=(const strtype &str);
~strtype();
void show();
}; 
 
strtype::strtype(char *ptr)
{
    len=strlen(ptr);
    p=new char[len+1];
    if(!p)
    { 
        cout << "Ошибка выделения памяти\n"; 
        exit(1);
    }
    strcpy(p, ptr);
}
 
void strtype::operator=(const strtype &str)
{
    len=strlen(str.p);
    p=new char[len+1];
    if(!p)
    { 
        cout << "Ошибка выделения памяти\n"; 
        exit(1);
    }
    strcpy(p, str.p);
}
 
strtype::~strtype()
{
    cout << "Освобождение памяти по адресу "<<hex<<&p<<'\n';
    delete[] p;
}
 
void strtype::show()
{
    cout<<p<<" - длина: "<<len;
    cout<<"\n";
} 
 
int main()
{
setlocale(LC_ALL, "Russian");
strtype s1("Первая строка "), s2("Вторая строка");
s1.show();
s2.show();
s2 = s1; 
s1.show();
s2.show();
return 0;
}
Добавлено через 3 минуты
У меня походу комп тупит... Раз десять обновлял страницу - новых сообщений не было, а тут сразу несколько... Я понял про память, но до сих пор не понимаю почему это продолжилось после перегрузки оператора "=". Кстати, сам обучаюсь по Лафоре )))
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru