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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вывести начальные индексы всех непрерывных последовательностей неотрицательных чисел массива http://www.cyberforum.ru/cpp-beginners/thread1156738.html
Вывести начальные индексы всех непрерывных последовательностей неотрицательных чисел, длина которых больше 5 Диапазон значений: -100 ; 100.
C++ Классы "Пара чисел" и "Прямоугольный треугольник" Необходимо реализовать: Базовый класс: ПАРА_ЧИСЕЛ (PAIR) Первое_число (first) - int Второе_число (second) – int Определить методы изменения полей и вычисления произведения чисел. Создать... http://www.cyberforum.ru/cpp-beginners/thread1156725.html
C++ Найти интеграл методом прямоугольников
использовать метод прямоугольников. Для построения прямоугольника использовать середину отрезка. y= 0, y = 5x − x2 +14. никак не разобрался как туда интегралы вводить или я что не так сделал......
C++ Продемонстрировать преимущества применения фактических и формальных параметров функций
разработать набор подпрограмм в которых продемонстрировать преимущества применения фактических и формальных параметров функций при решении задач различных направлений. Предметную область подобрать...
C++ Сформировать список L, включив в него положительные элементы списка L1 и отрицательные элементы списка L2 http://www.cyberforum.ru/cpp-beginners/thread1156719.html
Сформировать список L, включив в него положительные элементы списка L1 и отрицательные элементы списка L2. Список L отсортировать в порядке возрастания абсолютных значений элементов. В программе...
C++ Заданное натуральное число M представить в виде суммы квадратов двух натуральных чисел Заданное натуральное число M представить в виде суммы квадратов двух натуральных чисел . Написать и протестировать функцию решения этой задачи. Помогите пожалуйста Добавлено через 37 секунд... подробнее

Показать сообщение отдельно
aLarman
642 / 563 / 89
Регистрация: 13.12.2012
Сообщений: 2,109
25.04.2014, 09:36
C++
1
2
3
4
5
const String & String::operator=(String &obj2){
if(this == &obj) return *this;
strcpy(str,obj2.str);//не лучший вариант...
return *this;
}
C++
1
2
3
4
String String::operator+(String &obj2){
       //strcat(str,obj2.str);
надо создать временную переменную, в нее записать сначала строку 1 потом строку 2 а потом вернуть результат
}
напишите реализаци конструктора копирования, а то намучаетесь....
дальше смотреть не стал..

Добавлено через 1 минуту
Цитата Сообщение от BattleManLS Посмотреть сообщение
" <<" - Принадлежность (проверяется , принадлежит значение , предоставленное левым операндом , к множеству , предоставленной правым операндом ) .
думаю у Вас уже этот оператор перегружен как вывод...

Добавлено через 4 минуты
Цитата Сообщение от BattleManLS Посмотреть сообщение
" ==" - Эквивалентность множеств ,
почему опретор сравнения ничего не возвращает
C++
1
2
3
4
bool String::operator==(String &obj2){
      return !strcmp(str,obj2.str);
       
}
Добавлено через 2 минуты
!= пишется как отрицание от ==
C++
1
2
3
bool String::operator!=(String &obj2){
      return !(*this==obj2);
}
хотя....тут будет просто
можно так
C++
1
return strcmp(str,obj2.str);
Добавлено через 2 минуты
Цитата Сообщение от BattleManLS Посмотреть сообщение
( проверяется, есть множество, предоставлена ​​левым операндом , подмножеством множества , предоставленной правым ) ,
что?
имеете ввиду проверяется является ли множество, представленное левым операндом, подмножеством представленным правым операндом?

Добавлено через 5 минут
C++
1
2
3
4
5
6
7
8
9
void String::operator>=(String &obj2){
      int t = atoi(str);
    int k = atoi(obj2.str);
      if (t>=k){
        cout<<"Да 1 >= 2"<<endl;
      }
      else
        cout<<"Лож"<<endl;
}
wtf?


C++
1
2
3
4
5
bool String::operator>=(String &obj2){//опять таки такие операторы возвращают bool !!!!
      if(*this == obj2) return true;
if(strlen(str) > strlen(obj2.str)) return true;//можно еще замомрочиться и в случае равенства длин сравнивать символы...
return false;
}
вообще говоря вариантов реализации сравнения строк много, зависит от того какой результат нужен
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru