Operator-Overloading – вопросы и ответы

61
голос
1
ответ
[решено] Я парень из С++, изучающий Java (надеюсь) предстоящую работу. Таким образом, я занимаюсь реализацией Linked List в Java самостоятельно. Я закончил реализацию стандартного дважды связанного...
2 дня, 20 часов назад Slims
-4
голоса
1
ответ
Зачем возвращаться по ссылке для цепочки операторов? Я просмотрел так много ответов на SO, и фразу "возврат по ссылке, чтобы разрешить цепочку операторов", но без объяснения я не понимаю, почему я ...
2 дня, 21 час назад Sigmund Fraud
98
голосов
1
ответ
Я пытаюсь понять, как оператор присваивания знает, что такое тип данных правой стороны оператора присваивания. string x = "foo" Это подписи, которые я нашел в строковом файле XCode Clang. basic_str...
2 дня, 21 час назад user1767754
51
голос
1
ответ
Мне нужно создать оператор, который скопирует содержимое в один массив на другой. AKA - равный оператор. Я думаю об этом так: operator=(string array[10][10], string array2[10][10]) { int row = 0; i...
2 дня, 22 часа назад Iowa15
67
голосов
1
ответ
Моя домашняя работа требует от меня использовать двоичный оператор для управления сложными числами, которые хранятся в классе. Поскольку каждый класс создается (используя новый) в цикле, считываемо...
2 дня, 22 часа назад bemused and confused
95
голосов
1
ответ
Я пытаюсь перегрузить оператор << для нового класса Integer, который обнаруживает переполнение операций, а ниже - мои части кодов: class NewInteger{ private: int num; public: NewInteger(); Ne...
2 дня, 22 часа назад dezdichado
51
голос
1
ответ
Я перегрузил operator* для std::string class, но в этом случае: std::string operator*(std::string a, unsigned b) //bad { unsigned old_length = a.length(); a.resize(a.length()*b); for(unsigned i = o...
2 дня, 22 часа назад yanpas
73
голоса
1
ответ
Я перегружаю оператор извлечения потока, так что его можно использовать в классе Complex, который я создал. Когда я использую cin для ввода одного комплексного номера из пользователя в from (x, y),...
2 дня, 23 часа назад user3834119
82
голоса
1
ответ
Кто-нибудь может объяснить мне предупреждение из g++? Учитывая следующий код #include <iostream> namespace foo { struct bar { friend std::ostream & operator<< (std::ostream &, b...
2 дня, 23 часа назад max66
214
голосов
1
ответ
Можно ли переопределить оператор null-coalescing для класса в С#? Скажем, например, я хочу вернуть значение по умолчанию, если экземпляр имеет значение null и возвращает экземпляр, если это не так....
2 дня, 23 часа назад Patrik Svensson
73
голоса
1
ответ
У меня есть вектор объектов Student, который я хочу отсортировать, используя #include <algorithm> и sort(list.begin(), list.end()); Чтобы это сделать, я понимаю, что мне нужно перегрузить "&l...
2 дня, 23 часа назад Paul Williams
66
голосов
1
ответ
Я хочу реализовать индексирование с [] для моего класса deque. Я написал для себя свой класс. Однако я получаю сообщение об ошибке: "Неопределенный идентификатор-идентификатор перед" ['токен... воз...
2 дня, 23 часа назад user2883596
51
голос
1
ответ
Я изучаю c++, и это меня озадачивает. У меня есть класс Vector с перегруженными операторами ввода и ввода: #include <iostream> class Vector { public: Vector(float _x, float _y, float _z) { x ...
2 дня, 23 часа назад herrecito
62
голоса
1
ответ
Так друг рассказал мне, как игра была взломана и как работает эта техника. Затем он спросил, как лучше всего предотвратить такую ​​атаку. Самый прямой путь, который я знал, - это A) перетасовать би...
3 дня назад user4910881
88
голосов
1
ответ
Статья Википедии о свойствах представляет класс шаблонов, который можно использовать для создания элементов свойств (слегка отредактированный): template <typename T> class property { T value;...
3 дня назад Matthew G.
74
голоса
1
ответ
Идея состоит в том, чтобы перегрузить operator * , чтобы он мог умножать две строки, представляющие десятичное значение числа. Оператор является частью более крупного класса, но это не важно. Алгор...
3 дня, 1 час назад boone
51
голос
1
ответ
В "Think Python: как думать, как компьютерный ученый" автор утверждает: Для встроенных типов существуют реляционные операторы ( < , > , == и т.д.), Которые сравнивают значения и определяют, к...
3 дня, 1 час назад Mahmud Muhammad Naguib
88
голосов
1
ответ
Я пытаюсь получить прямой доступ к целому числу из класса указателя, перегружая * оператор, но, похоже, VC++ 10 не разрешает его. Просьба помочь: #include "stdafx.h" #include <iostream> #incl...
3 дня, 1 час назад user3010514
396
голосов
1
ответ
Если я создаю свой собственный класс в Python, какую функцию я должен определить, чтобы разрешить использование оператора "in", например class MyClass(object): ... m = MyClass() if 54 in m: ...
3 дня, 1 час назад astrofrog
51
голос
1
ответ
Я не знаком с подробностями того, как операторы сложения и умножения определены в C++, и я также не знаю, какая информация или недоступна компилятору для оптимизации неэффективных порядков работы. ...
3 дня, 1 час назад AnimatedRNG
51
голос
1
ответ
У меня возникла проблема с тем, чтобы использовать оператор [] для назначения значения, у меня есть две разные ошибки, "binary '=': оператор не найден, который принимает правый операнд типа" double...
3 дня, 1 час назад Joachim Gotzes
90
голосов
1
ответ
У меня есть прототип функции внутри спецификатора доступа к публичному классу. Это прототип: friend void operator=(String &s,char *str); Строка - это класс, в котором он прототипирован. Как вы ...
3 дня, 2 часа назад Robert Lucian Chiriac
71
голос
1
ответ
Мне нужно реализовать оператор присваивания для класса с большим количеством членов, который я не хочу назначать вручную. Могу ли я сначала создать мелкую копию памяти, а затем выполнить необходимы...
3 дня, 2 часа назад jackhab
52
голоса
1
ответ
noGiven Частный член pData private: T* pData; // Generic pointer to be stored Ниже приведена перегруженная реализация * и -> T& operator* () { return *pData; } T* operator-> () { return p...
3 дня, 2 часа назад zer0Id0l
63
голоса
1
ответ
Чтобы лучше понять язык эликсира, я хотел попытаться выполнить перегрузку оператора, добавив оператора эксклюзивного диапазона ... Пример: 1...10 затем создавал диапазон от 1 до, но исключая 10. (н...
3 дня, 3 часа назад Qqwy
93
голоса
1
ответ
Ниже приведен пример грубого примера того, как выглядит код, вопрос заключается в том, как я могу иметь DerivedOne и DerivedTwo перегружать < < но сохраните эти объекты в векторе Base *. Что ...
3 дня, 5 часов назад Baraphor
160
голосов
1
ответ
Согласно Руководству по быстрому программированию, перегрузка оператора разрешена и фактически довольно универсальна. Однако мне не удалось заставить его работать на игровой площадке. Например, про...
3 дня, 19 часов назад Erik
71
голос
1
ответ
Как получить доступ к свойствам массива numpy после передачи его через правый оператор, например __rsub__ ? Я написал очень простой класс в python, который определяет две функции: class test(object...
3 дня, 20 часов назад P.R.
52
голоса
1
ответ
Есть ли способ заставить оператор [] обрабатываться по-разному в контекстах lvalue и rvalue? Пример кода: include <stdio.h> class test { public: unsigned a; unsigned const & operator [](u...
3 дня, 21 час назад firk
79
голосов
1
ответ
Я работаю над очисткой моего C++ во время простоя проекта и создал проект Linked List для этого. В этом проекте я хотел бы вернуть текущее значение по заданному индексу. У меня уже есть способ сдел...
3 дня, 21 час назад sbrauen
51
голос
1
ответ
Изменение: я прочитал руководство в разделе " Что такое основные правила и идиомы для перегрузки оператора? но я просто не могу понять, что бросает ошибку. Я не пострадал от голосов, но если бы вы ...
3 дня, 21 час назад wem18
53
голоса
1
ответ
g++ 4.5.3 (cygwin) class SlipDatum { public: bool operator!(); long operator~(); } bool SlipDatum::operator!() { } long SlipDatum::operator~() { } Оператор!() Ожидает прототип: const bool operator!...
3 дня, 22 часа назад Arthur Schwarez
64
голоса
1
ответ
У меня есть следующий класс, что некоторые из операторов перегружены: class CLASS1 { CLASS1(); CLASS1(const CLASS1 &obj); CLASS1 operator +(const CLASS1 &obj) { CLASS1 srcObj; // doing add ...
3 дня, 22 часа назад Mosi
53
голоса
1
ответ
У меня есть класс в пространстве имен, например, следующем. test.h #include <iostream> using std::cout; namespace n1 { class myClass; } class n1::myClass { public: myClass(int na, int nb):a(n...
3 дня, 22 часа назад user4910881
51
голос
1
ответ
Привет, я создал простой 2D-координатный класс (Point2D), и я хочу перегрузить этот класс некоторыми базовыми операциями (+ - */) для некоторых базовых типов (short, int, double....), поэтому я дум...
3 дня, 23 часа назад BMAY
62
голоса
1
ответ
Я использую связанный список для реализации заданного класса. Чтобы скрыть мой узел узла от пользователей, я поместил объявление узла структуры в личное. Кроме того, я перегрузил оператор +, что оз...
4 дня назад Fan
81
голос
1
ответ
Я знаю, что scala позволяет перегружать его по умолчанию операторы (+, -! И т.д.). Можно ли определить пользовательские операторы и сделать что-то вроде |. | оператора, так что | -3 | который оцени...
4 дня назад user2887596
63
голоса
1
ответ
Скажем, у меня это: class Example { enum class E { elem1, elem2 }; E& operator++(E& e) { // do things } }; Кажется, имеет смысл, и я даже вижу, что он используется в других вопросах , но ко...
4 дня назад idlackage
72
голоса
1
ответ
У меня есть класс с именем MyInteger, и у этого класса есть один член данных типа int - как бы перегрузить оператор "=", чтобы вернуть это целое число? Мне не разрешено использовать метод accessor ...
4 дня назад user2991252
51
голос
1
ответ
У меня есть набор пар целых чисел, и я хочу его распечатать, поэтому я перегрузил << оператор для набора и парных классов: template<typename T, typename U> inline ostream& operator&...
4 дня назад Happy Mittal
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема