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

Разработать класс String – строка символов - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Поиск файлов на локальном компьютере http://www.cyberforum.ru/cpp-beginners/thread660032.html
Доброго всем времени суток! Подскажите как на С++ получить список корневых директорий(С: , Е: и тд)?Есть какая-нибудь функция типа как File.listRoots() в Джаве? И не работает рекурсия поиска файла, может кто подскажет в чем проблема: int _tmain(int argc, TCHAR *argv) { FSearch(TEXT("E:")); return 0; } DWORD FSearch(TCHAR* pstr)
C++ C++ и XML Как с программы на С++ корректно записать данные в XML-файл? а конкретнее - результаты поиска всех файлов локального компа - например вектор структур : struct DFile { unsigned int ind; unsigned int sz; TCHAR* pth; TCHAR* name; TCHAR* date; }; http://www.cyberforum.ru/cpp-beginners/thread660008.html
C++ 3-ех мерный квадрат
Если ли трехмерные готовые варианты трехмерных квадратов, чтобы его можно было вращать и рассматривать его, но без сторонних библиотек. Может есть готовые варианты или же может дайте ссылки на материалы для изучения, чтобы самому сделать?
Создать 2 целые переменные и определить «расстояние» между ними в памяти C++
// dz13_3.cpp : Defines the entry point for the console application. // Создать 2 целые переменные и определить «расстояние» между ними в памяти #include "stdafx.h" #include <iostream> #include <Windows.h> using namespace std; void main()
C++ Небольшое пояснение http://www.cyberforum.ru/cpp-beginners/thread658836.html
Здравствуйте,хотел бы поинтересоваться.Вот я,планирую начать изучать с++,хотелось бы иметь примерное представление о том что такое программисты с++,что собственно в теперешние время пишется на с++,какого рода программы, что необходимо помимо самого языка с++ изучать,может одного с++ недостаточно будет в дальнейшем,какие ещё языки пересекаются с этим, необходимо ли хорошие знание в области...
C++ Сортировка источников по алфавиту К подготовленной статье автор приложил список использованной литературы, но расположил издания в порядке появления ссылок на них в тексте. Редактор потребовал расположить источники по алфавиту.Упорядочить список литературы по требованию редактора ( каждое название- с нового абзаца: номер п/п,автор(-ы),название работы и т.д.) РАЗВИТИЕ ЗАДАЧИ. Текст статьи со ссылками прилагается; после сортировки... подробнее

Показать сообщение отдельно
m1Rr0r
 Аватар для m1Rr0r
247 / 230 / 15
Регистрация: 05.02.2010
Сообщений: 3,213
Завершенные тесты: 2
30.09.2012, 04:29     Разработать класс String – строка символов
Цитата Сообщение от Niklepas Посмотреть сообщение
ну если не сложно, на пальцах объяснить, что подразумевается под методом вывода объекта на экран? то есть необходимо реализовать это в классе как функцию?
это значит для твоего класса описать функцию которая будет показывать внутренности твоего класса...

Добавлено через 2 часа 29 минут
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
class String  {
private:
    char *pStr;
    int _size;
public:
    String()  {
        pStr = NULL;
        _size = 0;
        //cout << "Constr " << this << endl;
    }
    String(char *str)  {
        _size = strlen(str);
        pStr = new char[_size + 1];
        strcpy(pStr, str);
        //cout << "Constr " << this << endl;
    }
    String(const String &obj)  {
        _size = obj._size;
        pStr = new char[_size + 1];
        strcpy(pStr, obj.pStr);
        //cout << "Copy " << this << endl;
    }
    ~String()  {
        delete []pStr;
        //cout << "Destr " << this << endl;
    }
    int size()  {
        return _size;
    }
 
    String operator + (const String &obj)  {
        char *temp = new char[_size + obj._size + 1];
        strcpy(temp, this->pStr);
        strcat(temp, obj.pStr);
        String result(temp);
        delete []temp;
        return result;
    }
    String operator + (const char c)  {
        int t_size;
        if(_size != 0)
            t_size = this->_size + 2;
        else
            t_size = 2;
        char *temp = new char[t_size];
        if(pStr)
            strcpy(temp, this->pStr);
        temp[t_size - 2] = c;
        temp[t_size - 1] = '\0';
        String result(temp);
        delete []temp;
        return result;
    }
    /*operator char*()  {
        return pStr;
    }*/
    String &operator = (const String &obj)  {
        if(&obj == this)
            return *this;
        delete []pStr;
        _size = obj._size;
        pStr = new char[_size + 1];
        strcpy(pStr, obj.pStr);
        return *this;
    }
    friend istream &operator >> (istream &is, String &obj)  {
        int ios_size = 0;
        is.sync();
        String temp;
        while(is.peek() != 10)  {
            temp = temp + (char)is.get();
            ios_size++;
        }       
        delete []obj.pStr;
        obj._size = temp._size;
        obj.pStr = new char[obj._size];
        obj = temp;
        return is;
    }
    friend ostream &operator << (ostream &os, String &obj)  {
        for(int i = 0; i < obj.size(); i++)
            os <<obj.pStr[i];
        return os;
    }
};
Вот еще чуток.
 
Текущее время: 04:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru