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

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

Войти
Регистрация
Восстановить пароль
 
vikaplys
0 / 0 / 1
Регистрация: 19.11.2009
Сообщений: 29
#1

Работа с классами - C++

09.12.2009, 11:22. Просмотров 984. Ответов 5
Метки нет (Все метки)

Помогите решить задачу с использованием классов
Дан текст. необходимо удвоить каждый символ в этом тексте, включая пробелы.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.12.2009, 11:22
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Работа с классами (C++):

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

Работа с классами - C++
Подскажите, создал класс class Person { private: ... public: static int count;

Работа с классами - C++
Задача:найти сумму всех отрицательных элементов матрицы и записать в вектор. For (i=0;i<=N;i++) for (j=0;j<=M;j++) if (a<0) ...

работа с классами в С++ - C++
Пусть есть class.срр, в котором описан класс MyClass{ public: int i; ... } Есть файл main.cpp, в нем я использую...

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

Работа с классами - C++
Здравствуйте. Есть код, компиляция происходит нормально, Dev-C++ не выдаёт никаких ошибок. Но когда запускаю программу и начиная там...

5
easybudda
Модератор
Эксперт CЭксперт С++
9677 / 5627 / 953
Регистрация: 25.07.2009
Сообщений: 10,801
09.12.2009, 17:29 #2
С++ плохо знаю, потому наверняка не лучший вариант, но в принципе работает...
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
#include <iostream>
#include <string>
 
class DoubleString {
private:
    std::string ds;
    std::string::const_iterator i;
    void fill(const std::string s){
        for ( i = s.begin(); i != s.end(); ++i ){
            ds += *i;
            ds += *i;
        }
    }
public:
    DoubleString(const std::string& s){
        ds = "";
        fill(s);
    }
    DoubleString(){
        ds = "";
    }
    void assignStr(const std::string& s){
        ds = "";
        fill(s);
    }
    
    friend std::ostream& operator << (std::ostream& ost, const DoubleString& d);
};
 
std::ostream& operator << (std::ostream& ost, const DoubleString& d){
    ost << d.ds;
    return ost;
}
 
int main(){
    std::string str;
    DoubleString dbl;
    while (true){
        std::cout << "Enter string: ";
        getline(std::cin, str);
        if ( str.empty() )
            break;
        dbl.assignStr(str);
        std::cout << dbl << std::endl;
    }
    return 0;
}
1
vikaplys
0 / 0 / 1
Регистрация: 19.11.2009
Сообщений: 29
12.12.2009, 18:38  [ТС] #3
Подскажите пожалуйста как исправит эту программу, чтобы использовался Конструктор и Деструктор
0
M128K145
Эксперт С++
8293 / 3513 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
12.12.2009, 20:00 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int main(){
        std::string str;
        DoubleString* dbl = new DoubleString();
        while (true){
                std::cout << "Enter string: ";
                getline(std::cin, str);
                if ( str.empty() )
                        break;
                dbl.assignStr(str);
                std::cout << dbl << std::endl;
        }
        delete dbl;
        return 0;
}
0
Gravity
563 / 557 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
12.12.2009, 23:08 #5
Цитата Сообщение от vikaplys Посмотреть сообщение
Подскажите пожалуйста как исправит эту программу, чтобы использовался Конструктор и Деструктор
Там и так в классе 2 конструктора, а деструктировать собсно и нечего.
0
easybudda
Модератор
Эксперт CЭксперт С++
9677 / 5627 / 953
Регистрация: 25.07.2009
Сообщений: 10,801
13.12.2009, 05:00 #6
Цитата Сообщение от vikaplys Посмотреть сообщение
Подскажите пожалуйста как исправит эту программу, чтобы использовался Конструктор и Деструктор
Класс тот же, а main вот:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int main(){
    std::string str;
    DoubleString *dbl;
    while (true){
        std::cout << "Enter string: ";
        getline(std::cin, str);
        if ( str.empty() )
            break;
        dbl = new DoubleString(str); // с конструктором, так с конструктором ;)
        std::cout << *dbl << std::endl;
        delete dbl; // деструктор по умолчанию DoubleString, созданный компилятором,
                    // а за одно и деструктор по умолчанию класса string. Свой деструктор создавать и в правду незачем.
    }
    return 0;
}
0
13.12.2009, 05:00
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.12.2009, 05:00
Привет! Вот еще темы с ответами:

Работа с классами - C++
Помогите плз Определите значение переменных а, х, с после выполнения следующих команд: class First { int value; public: ...

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

Работа с классами - C++
Привет!!! Есть задачка: &quot;Определите класс Oper, содержащий идентификатор типа ld (string или C-строка) и операцию (указатель на...

Работа с классами - C++
Имеется заголовочный файл В нем создаю два класса Vector и MyCamera. class Vector { public: float x,y,z; }; ...


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

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

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