Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Max32448
1 / 1 / 0
Регистрация: 05.03.2018
Сообщений: 21
1

Как создать класс, в котором есть строки произвольной длины?

18.03.2018, 13:09. Просмотров 747. Ответов 4
Метки нет (Все метки)

Здравствуйте!
Нужно создать клас закрытыми членами которого будут 3 строки произвольной длины. И в конструкторе с параметрами заполнять эти строки.

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.03.2018, 13:09
Ответы с готовыми решениями:

Создать класс одномерных масивов содержащих строки фиксированной длины
Очень прошу помочь, так как сам ничего не понимаю. Не смотря на мое желаниие учиться, преподаватели...

Разработать класс, позволяющий оперировать с числами произвольной длины
Добрый день. есть вот такая задачка. как ее реализовать? Разработать класс, позволяющий...

Ввод строки с пробелами произвольной длины
Помогите, пожалуйста. Нужно ввести строку произвольной длины с пробелами и различными символами. ...

Создайте класс, в котором есть ostream& operator<<. Класс должен содержать очередь с приоритетом
Создайте класс, в котором есть ostream&amp; operator&lt;&lt;. Класс должен содержать очередь с приоритетом....

Массивы: создать цепочку символов «а» произвольной длины, после которой следует символ «b»
Всем привет! Помогите пожалуйста сделать программу с комментариями! Цепочка символов «а»...

4
_stanislav
(50 / 50 || 80 / 20) ?
893 / 674 / 282
Регистрация: 16.08.2014
Сообщений: 2,867
Завершенные тесты: 2
18.03.2018, 13:31 2
Max32448,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <string>
 
class Strings
{
private:
    std::string one ,two, three;
 
public:
    Strings(const std::string& on, const std::string& tw,
        const std::string& th) : one{on}, two{tw}, three{th} {}
};
 
int main(int argc, char* argv[] )
{
    Strings strings("one", "two", "three");
 
    return 0;
}
0
Max32448
1 / 1 / 0
Регистрация: 05.03.2018
Сообщений: 21
18.03.2018, 13:35  [ТС] 3
_stanislav, а так чтоб обойтись только чарами возможно?
0
SuperKir
452 / 410 / 285
Регистрация: 10.03.2015
Сообщений: 1,763
Завершенные тесты: 1
18.03.2018, 13:42 4
Лучший ответ Сообщение было отмечено Max32448 как решение

Решение

Как вариант:
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
#include "iostream"
 
using namespace std;
 
class className
{
private:
    char *_line_1;
    char *_line_2;
    char *_line_3;
public:
    className();
    className(char *line_1, char *line_2, char *line_3);
    ~className();
    void SetLines(char *line_1, char *line_2, char *line_3);
    void Print();
    char * GetFirstLine();
    char * GetSecondLine();
    char * GetThirdLine();
};
 
className::className()
{
    _line_1 = new char[1];
    strcpy_s(_line_1, 2, "");
    _line_2 = new char[1];
    strcpy_s(_line_2, 2, "");
    _line_3 = new char[1];
    strcpy_s(_line_3, 2, "");
}
 
className::~className()
{
    delete[]_line_1;
    delete[]_line_2;
    delete[]_line_3;
}
 
void className::SetLines(char* line_1, char* line_2, char* line_3)
{
    _line_1 = new char[strlen(line_1) + 1];
    strcpy_s(_line_1, strlen(line_1) + 1, line_1);
    _line_2 = new char[strlen(line_2) + 1];
    strcpy_s(_line_2, strlen(line_2) + 1, line_2);
    _line_3 = new char[strlen(line_3) + 1];
    strcpy_s(_line_3, strlen(line_3) + 1, line_3);
}
 
void className::Print()
{
    cout << "First string: " << _line_1 << endl;
    cout << "Second string: " << _line_2 << endl;
    cout << "Third string: " << _line_3 << endl;
}
 
char* className::GetFirstLine()
{
    return _line_1;
}
 
char* className::GetSecondLine()
{
    return _line_2;
}
 
char* className::GetThirdLine()
{
    return _line_3;
}
 
className::className(char* line_1, char* line_2, char* line_3)
{
    _line_1 = new char[strlen(line_1) + 1];
    strcpy_s(_line_1, strlen(line_1) + 1, line_1);
    _line_2 = new char[strlen(line_2) + 1];
    strcpy_s(_line_2, strlen(line_2) + 1, line_2);
    _line_3 = new char[strlen(line_3) + 1];
    strcpy_s(_line_3, strlen(line_3) + 1, line_3);
}
 
int main(int argc, char* argv[])
{
    className test;
    test.Print();
    test.SetLines("My first string", "My second string", "My third string");
    test.Print();
 
    className test2("Ofc", "u2", "GG WP");
    test2.Print();
    cout << test2.GetFirstLine() << endl;
    cout << test2.GetSecondLine() << endl;
    cout << test2.GetThirdLine() << endl;
}
1
_stanislav
(50 / 50 || 80 / 20) ?
893 / 674 / 282
Регистрация: 16.08.2014
Сообщений: 2,867
Завершенные тесты: 2
18.03.2018, 13:51 5
Лучший ответ Сообщение было отмечено Max32448 как решение

Решение

Max32448,
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
#define _CRT_SECURE_NO_WARNINGS
 
#include <cstddef>
#include <cstring>
 
class Strings
{
private:
    char* one;
    char* two;
    char* three;
 
public:
    Strings(const char* on, const char* tw,
        const char* th)
    {
        one = (char*)malloc(strlen(on) + 1);
        strcpy(one, on);
 
        two = (char*)malloc(strlen(tw) + 1);
        strcpy(two, tw);
 
        three = (char*)malloc(strlen(th) + 1);
        strcpy(three, th);
    }
    ~Strings()
    {
        free(one);
        free(two);
        free(three);
    }
};
 
int main(int argc, char* argv[] )
{
    Strings strings("one", "two", "three");
 
    return 0;
}
1
18.03.2018, 13:51
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.03.2018, 13:51

Помогите найти ошибку: Создать строку символов произвольной длины, заданную диапазоном
/*Задание: Создать строку символов произвольной длины. Ввести с клавиатуры начало и конец диапазона...

Перевод строки цифр произвольной длины во внутреннее двоичный код и обратно
Необходимо написать функции, которые переводят строку цифр в двоичный код (во внутреннем...

Класс "строка" для работы со строками произвольной длины
Написать и отладить программу,использующую класс &quot;строка&quot; для работы со строками произвольной...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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