Так то и оно, что разница не значима. Я же критикую те тексты, где читабельность исчисляется десятками минут на одну короткую строчку.Romeo писал(а):Речь идёт о секундах, а не миллисекундах.
Перегрузка операции минус
Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain
Писать можно на чём угодно, но зачем же так себя ограничивать? Пиши на c.
Чем различаются глаголы "читали" и "читаете"?То есть сначала не отрицаешь. Но потом говоришь, что по себе "смерил" (wtf?), то есть всё таки выходит, что отрицаешь? А что значит, что доказательство не тормознуло, вообще без понятия? Жаргонизм?Где здесь причина? Где следствие? Я сначала думал, что тебя трудно понять, так как русский язык не родной, но уже начинаю подозревать, что просто проблемы с логикой, и от языка это никак не зависит.
Писать можно на чём угодно, но зачем же так себя ограничивать? Пиши на c.
- Romeo
- Сообщения: 3126
- Зарегистрирован: 02 мар 2004, 17:25
- Откуда: Крым, Севастополь
- Контактная информация:
Конечно знаю. Только в чём ты меня уличить пытаешь, я понять не могу. Твоим мысли и определения слишком бессвязны.Сионист писал(а):Чем различаются глаголы "читали" и "читаете"?
Про bool прочёл? Вопросы ещё есть?
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
-
- Сообщения: 1228
- Зарегистрирован: 26 фев 2004, 13:24
- Откуда: Pietari, Venäjä
- Контактная информация:
Sereg писал(а):Ребята помогите решить!!!
Создать несколько объектов (например, a и b) разработанного класса. Класс – символьная строка. Реализовать для объектов данного класса перегрузку операции - (c=a-b). Содержимое объектов (a,b,c, их строк), до и после выполнения операции, вывести на экран.
Постарался сделать коряво и в старом стиле. Походи по коду отладчиком, разберись как он работает. Напиши функцию которая выводит результат хотябы.
Код: Выделить всё
#include <vector>
#include <string>
#include <algorithm>
class MyString {
MyString(const std::vector< std::string >& words);
public:
MyString(const std::string& string);
MyString operator-(const MyString& other) const;
private:
static std::vector< std::string > split(const std::string& arg, char sep);
std::vector< std::string > words_;
};
MyString::MyString(const std::vector< std::string >& words)
:words_(words)
{}
MyString::MyString(const std::string& string)
:words_(split(string, ' '))
{}
std::vector< std::string > MyString::split(const std::string& arg, char sep)
{
std::vector< std::string > retVal;
std::string::const_iterator p0 = arg.cbegin();
std::string::const_iterator p1 = arg.cbegin();
std::string::const_iterator pEnd = arg.cend();
bool newWord = false;
for (; ;) {
if (p1 == pEnd || *p1 == ' ') {
if (!(retVal.empty() && p0 == p1 && p1 == pEnd)) {
retVal.push_back(std::string(p0, p1));
newWord = true;
}
}
if (p1 != pEnd)
++p1;
else
break;
if (newWord) {
p0 = p1;
newWord = false;
}
}
return retVal;
}
MyString MyString: :o perator-(const MyString& other) const
{
std::vector< std::string > acc;
std::vector< std::string > otherWords = other.words_;
std::sort(otherWords.begin(), otherWords.end());
std::vector< std::string >::const_iterator itr = words_.begin();
for (; itr != words_.end(); ++itr) {
if (!std::binary_search(otherWords.begin(), otherWords.end(), *itr)) {
acc.push_back(*itr);
}
}
return MyString(acc);
}
int main()
{
MyString ww("delta");
MyString qq("apple bravo delta jazz");
MyString ee = qq - ww;
return 0;
}
2B OR NOT(2B) = FF
- Romeo
- Сообщения: 3126
- Зарегистрирован: 02 мар 2004, 17:25
- Откуда: Крым, Севастополь
- Контактная информация:
А это решение, похоже, для вычитания по словам. Absurd не осилил прочитать четыре страницы, которые мы нафлудили. Но тем лучше даже. У топикстартера будет из чего выбрать 

Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
-
- Сообщения: 1228
- Зарегистрирован: 26 фев 2004, 13:24
- Откуда: Pietari, Venäjä
- Контактная информация:
На каком-нибудь допотопном RISC-е может быть sizeof(char)==sizeof(short)==sizeof(int)==1, при этом CHAR_BITS==32. По определению байт это минимально адресуемая ячейка памяти и на такой машине ее размер равен не 8, а 32 битам. Октет же 8 бит всегда. Я не работал на таком железе никогда, читал в Usenet в comp.lang.c++ когда был студентом. Другое дело что сейчас до сих пор живы только x86_64, ARM и AArch64 и на этих процессорах подобной суровости не было никогда. Причем они выжили во многом из-за отсутствия суровости, т.к. старые программы не надо было переписывать, а обратная совместимость хотябы на уровне исходного кода очень нужна.Ой, а поведайте нам, дремучим, чем октет от байта отличается, раз уж Вы их противопоставили?
2B OR NOT(2B) = FF