es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tag: OPERATOR-OVERLOADING

Problema de diseño de Sobrecarga Global de Operadores en C++

Tengo un problema con mi diseño actual. Tengo una clase que se puede construir con cualquier argumento. Si ayuda conceptualmente, piense en T como si fuera para lambdas. // 1 template<class t=””> foo(T) {/*…*/} Esta clase sobrecarga muchos operadores, como != // 2 template<class t=””> bool foo::operator!=(const T&) {/*…*/} Los . . . Read more

Cómo decirle a Rust que haga todas las comparaciones de números de punto flotante utilizando una biblioteca específica de forma predeterminada?

Me gustaría que todas las comparaciones de números decimales se realicen con float_cmp::approx_eq (por ejemplo), pero seguir utilizando el operador de comparación de igualdad ==. ¿Cómo puedo lograr esto? impl PartialEq for f32 { fn eq(&self, other: &Self) -> bool { approx_eq!(f32, *self, *other) } } Resulta en: error[E0119]: implementaciones . . . Read more

C++ ¿cómo sobrecargar el operador < para números complejos?

El siguiente código funciona para comparar dos números complejos en C++: #include <iostream> #include <math.h> class Complex { private: float real; float imag; public: Complex(float realVal, float imagVal): real(realVal), imag(imagVal) {} double magnitude() { return sqrt(real*real)+sqrt(imag*imag); } friend bool operator<(Complex& c1, Complex& c2) { if(c1.magnitude() < c2.magnitude()){ return true; } . . . Read more

Sobrecarga del operador variádico [] en C++

Estoy buscando usar las expresiones pasadas en el operador []. Pensé que usando argumentos de plantilla variádicos funcionaría, pero me equivoqué… ¿Hay alguna forma de hacer esto en c++11? class object { private: public: void values() { std::cout << “finalizado” << std::endl; } template <typename t,=”” typename…=”” type=””> void values(T . . . Read more