NumeroReal.h
#pragma once #include <iostream> #include <cmath> #include <cstdlib> using namespace std; class NumeroReal { private: double n; public: NumeroReal(); // default constructor NumeroReal( double n ); // parameter constructor NumeroReal( const NumeroReal &unNumeroReal ); // copy constructor ~NumeroReal(); // destructor void setNumeroReal( double n ); double getNumeroReal() const; friend ostream &operator << ( ostream &output, const NumeroReal &unNumeroReal ); friend istream &operator >> ( istream &input, NumeroReal &unNumeroReal ); NumeroReal cos() const; };
NumeroReal.cpp
#include "NumeroReal.h" NumeroReal::NumeroReal(void) { this->n = 1.0; } NumeroReal::NumeroReal( double n ) { this->n = n; } NumeroReal::NumeroReal( const NumeroReal &unNumeroReal ) { this->n = unNumeroReal.n; } NumeroReal::~NumeroReal(void) { } //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx void NumeroReal::setNumeroReal( double n ) { this->n = n; } double NumeroReal::getNumeroReal() const { return ( this->n ); } //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ostream &operator << ( ostream &output, const NumeroReal &unNumeroReal ) { output << unNumeroReal.n; return ( output ); } istream &operator >> ( istream &input, NumeroReal &unNumeroReal ) { cout << "Entre un numero real: "; cin >> unNumeroReal.n; return ( input ); } NumeroReal NumeroReal::cos() const { return ( this->cos() ); }
Main.cpp
#include "NumeroReal.h" #include <iostream> #include <cmath> #include <conio.h> #include <cstdlib> using namespace std; int main () { NumeroReal n1, n2( 4.0 ); cout << "Numero Real # 1" << endl; cin >> n1; cout << "\nNumero Real # 2" << endl; cin >> n2; cout << cos( n1 ) << "\n\n"; system("PAUSE"); return 0; }
I want to find the cos( n1 ) but when i try to print it it gives me this error:
------ Build started: Project: CalculosNumeros, Configuration: Debug Win32 ------
Compiling...
Main.cpp
c:\documents and settings\mpayne007\my documents\visual studio 2005\projects\calculosnumeros\calculosnumeros\main.cpp(78) : error C2665: 'cos' : none of the 3 overloads could convert all the argument types
c:\program files\microsoft visual studio 8\vc\include\math.h(116): could be 'double cos(double)'
c:\program files\microsoft visual studio 8\vc\include\math.h(503): or 'float cos(float)'
c:\program files\microsoft visual studio 8\vc\include\math.h(551): or 'long double cos(long double)'
while trying to match the argument list '(NumeroReal)'
Build log was saved at "file://c:\Documents and Settings\MPayne007\My Documents\Visual Studio 2005\Projects\CalculosNumeros\CalculosNumeros\Debug\BuildLog.htm"
CalculosNumeros - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========