Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
38 / 38 / 30
Регистрация: 07.04.2014
Сообщений: 219
1

Operator int() в классе Строка

05.06.2014, 21:27. Показов 1800. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Приведите пример, пожалуйста, как воспользоваться данной перегрузкой операции в main.

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
 String.h
 
class String
{
private:
    char* str;
    int length;
    int capacity;
public:
    String(); // конструктор по умолчанию
    String(const char*); // конструктор
 
    String::~String() // деструктор
    {
        delete[] str;
    }
 
    const char* GetStr() const { return str; }
 
    const char * FindSymbol(char);
 
    void CopyStr(const char*);
    void CopyStr(String & s);
 
    void Strcat(const char*);
    void Strcat(String & s);
 
    int Strlen();
 
    char * Strrev();
 
    int Strcmp(char* str) const;
    int Strcmp(String & s);
 
    void SetStr(const char* s);
 
                                             // перегрузка операций
 
    // перегрузка операции присваивания
    String& operator=(const String& s);
    String& operator=(const char* s);
    
    operator int() const { return atoi(str); }
};
 
// перегрузка операции вывода
inline ostream& operator<<(ostream& os, const String& s)
{
    return os << s.GetStr();
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.06.2014, 21:27
Ответы с готовыми решениями:

Перегрузка operator>> и operator<< в абстрактном классе
Здрасьте! Есть необходимость перегрузить потоки, Я знаю как это сделать через friend, но вот...

operator char() или operator int()
Здорова госпдо! Снова ничо не ясно как всегда. Разбираю программку из книги Страуструпа, там он...

Перегрузить операторы operator+() и operator*() в пользовательском классе "Комплексное число"
Здравствуйте. Предлагаю заняться арифметикой. Создал прослейший класс, перегрузил операторы...

перегрузить operator()(int,int);
#define _CRT_SECURE_NO_WARNINGS #include &lt;iostream&gt; #include &lt;locale&gt; using namespace std; ...

4
Модератор
Эксперт С++
13507 / 10757 / 6412
Регистрация: 18.12.2011
Сообщений: 28,712
05.06.2014, 21:31 2
C++
1
2
3
4
5
6
int main()
{    
     String A("primer");
      cout<<A;
....
}
0
38 / 38 / 30
Регистрация: 07.04.2014
Сообщений: 219
05.06.2014, 21:43  [ТС] 3
И что именно в данной ситуации делает operator int() ?
0
2782 / 1935 / 570
Регистрация: 05.06.2014
Сообщений: 5,600
05.06.2014, 22:08 4
Лучший ответ Сообщение было отмечено Spiderman5 как решение

Решение

Приведите пример, пожалуйста, как воспользоваться данной перегрузкой операции в main.
C++
1
2
String test="1234";
cout<<int(test)+1<<endl;
0
38 / 38 / 30
Регистрация: 07.04.2014
Сообщений: 219
05.06.2014, 22:32  [ТС] 5
Спасибо !
0
05.06.2014, 22:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.06.2014, 22:32
Помогаю со студенческими работами здесь

error: invalid operands of types 'const int*' and 'const int*' to binary 'operator+'
Что означает ошибка в 8 строчке error: invalid operands of types 'const int*' and 'const int*' to...

operator[] в классе
Написал собственный класс, где хранит одномерный массив template &lt;class TTT&gt; public class...

Перегрузка operator [] в классе
Доброе всем! как перегрузить оператор , чтобы иметь возможность записывать туда значения?...

operator int() что за зверь?
Несколько раз видел в интернетах такую запись: operator int(){}; По контексту так и не понял, что...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru