Вопросы по теме 'operator-overloading'

Должен ли оператор‹‹ быть реализован как друг или как функция-член?
Это в основном вопрос, есть ли «правильный» способ реализовать operator<< ? Читая это , я вижу что-то вроде: friend bool operator<<(obj const& lhs, obj const& rhs); предпочтительнее чего-то вроде ostream&...
145144 просмотров
schedule 27.05.2023

Почему вы не можете перегрузить '.' оператор в С++?
Было бы очень полезно иметь возможность перегружать файл . оператор в C++ и возвращает ссылку на объект. Вы можете перегрузить operator-> и operator* , но не operator. Есть ли для этого техническая причина?
31610 просмотров
schedule 11.06.2023

Почему '=' нельзя перегружать в С#?
Мне было интересно, почему я не могу перегрузить '=' в С#? Могу ли я получить лучшее объяснение?
29554 просмотров
schedule 21.02.2023

Перегрузка оператора с выделением памяти?
Приведенное ниже предложение взято из Положительное наследие C++ и Java Брюса Экеля, о перегрузке операторов в C++: C++ имеет как выделение стека, так и выделение кучи, и вы должны перегружать свои операторы, чтобы обрабатывать все ситуации...
2796 просмотров
schedule 05.04.2023

Перегрузка = в C ++
Я пытаюсь перегрузить оператор присваивания и хотел бы кое-что прояснить, если это нормально. У меня есть функция, не являющаяся членом, bool operator==( const MyClass& obj1, const myClass& obj2 ) определенная вне моего класса. Я не...
524 просмотров
schedule 27.11.2022

Можно ли в Python перегрузить операторы ++?
Можно ли в Python перегрузить операторы ++?
3550 просмотров
schedule 28.09.2022

Шаблон функции с оператором
Можете ли вы в C++ иметь шаблонный оператор в классе? Вот так: class MyClass { public: template<class T> T operator()() { /* return some T */ }; } Это на самом деле кажется, что компилируется просто отлично, но возникает...
30548 просмотров
schedule 11.03.2023

Можно ли присвоить объект int?
У меня есть класс CCounter, который содержит целочисленное значение, защищенное мьютексом. Я определил несколько операторов, таких как post/pre inc/dec, возвращающих целое число, поэтому я могу сделать: CCounter c(10); int i = c++; но что...
3849 просмотров
schedule 02.07.2023

перегружено = равенство не вызывается при создании obj2 = obj1
у меня есть этот класс под названием MemoryManager, предполагается реализовать простой интеллектуальный указатель (счетная ссылка); у меня есть вектор, в котором я храню запрошенные указатели, и я возвращаю индекс указателя вызывающей стороне.....
301 просмотров
schedule 15.03.2023

Перегрузка арифметических операторов в JavaScript?
Это лучший способ сформулировать этот вопрос, учитывая это определение «класса» JavaScript: var Quota = function(hours, minutes, seconds){ if (arguments.length === 3) { this.hours = hours; this.minutes = minutes;...
68275 просмотров
schedule 28.09.2023

Переопределение операторов массива переменных экземпляра в Ruby
Извините за плохое название, я действительно не знаю, как это назвать. У меня есть что-то вроде этого в Ruby: class Test def initialize @my_array = [] end attr_accessor :my_array end test = Test.new test.my_array << "Hello,...
3148 просмотров
schedule 29.12.2022

Оператор перегрузки‹‹ для шаблонного класса
Я пытаюсь реализовать метод для двоичного дерева, который возвращает поток. Я хочу использовать поток, возвращенный в методе, чтобы показать дерево на экране или сохранить дерево в файле: Эти два метода относятся к классу бинарного дерева:...
2795 просмотров
schedule 26.03.2022

Почему интерфейс Visual C++ не может содержать операторов?
Согласно документу MSDN по __interface , интерфейс Visual C++ "не может содержат конструкторы, деструкторы или операторы». Почему интерфейс не может содержать оператора? Есть ли большая разница между методом get, который возвращает ссылку:...
758 просмотров

Почему оператор + для списка устарел в Scala?
Почему оператор + для списка устарел в Scala? http://www.scala-lang.org/docu/files/api/scala/List.html#%2B%28B%29
2972 просмотров

Как использовать операторы C++ в python с помощью boost::python (pyopencv)
Я использую привязки pyopencv. Эта библиотека python использует boost::python для подключения к OopenCV. Теперь я пытаюсь использовать класс SURF, но не знаю, как обращаться с оператором класса в моем коде Python. Класс С++ определяется как:...
944 просмотров

Как правильно перегрузить операторы потока ‹‹ ›› для моего класса?
Я немного запутался в том, как перегрузить операторы потока для моего класса в С++, поскольку кажется, что они являются функциями в классах потока, а не в моем классе. Каков нормальный способ сделать это? На данный момент для оператора "получить от"...
4456 просмотров

Конструктор копирования и динамическое размещение
Я хотел бы спросить вас, как написать конструктор копирования (и оператор =) для следующих классов. Класс Node хранит координаты x, y каждого узла и указатель на другой узел. class Node { private: double x, y; Node *n; public: Node (double xx,...
2191 просмотров

Перегрузка оператора присваивания в C ++
Как я понял, при перегрузке operator = возвращаемое значение должно быть неконстантной ссылкой. A& A::operator=( const A& ) { // check for self-assignment, do assignment return *this; } Разрешить вызов неконстантных функций-членов в...
8465 просмотров

Перегрузить оператор разыменования
Я пытаюсь перегрузить оператор разыменования, но компиляция следующего кода приводит к ошибке 'initializing' : cannot convert from 'X' to 'int' : struct X { void f() {} int operator*() const { return 5; } }; int main() { X* x = new...
15999 просмотров
schedule 23.06.2023

вопрос относительно этого указателя в С++
мне дали класс с переменными int x и y в частном порядке и функцией перегрузки оператора, class Bag{ private: int x; int y; public: Bag(); ~Bag(); //....... //.....etc }; Bag operator+ (Bag new) const{ Bag...
795 просмотров
schedule 01.11.2022