error code error C2065: \'Resistor\' : undeclared identifier error C2146: syntax
ID: 1811960 • Letter: E
Question
error code
error C2065: 'Resistor' : undeclared identifier
error C2146: syntax error : missing ';' before identifier 'tolerance'
error C2065: 'tolerance' : undeclared identifier
error C2275: 'ResistorClass' : illegal use of this type as an expression
error C2146: syntax error : missing ';' before identifier 'oResTwo'
error C3861: 'oResTwo': identifier not found
error C2065: 'oResTwo' : undeclared identifier
: error C2065: 'oResTwo' : undeclared identifier
error C2228: left of '.DisplayResistor' must have class/struct/union type is ''unknown-type''
#include
<iostream>
#include<iomanip>
#include<string>
using namespace std;
class ResistorClass
{
private:
double m_dResValue;
double m_dTolerance;
double m_dMinResistance;
double m_dMaxResistance;
public:
string m_cResistorName;
void DisplayResistor( void );
void EnterResistance (void );
void AddSeries ( ResistorClass Resistor1, ResistorClass Resistor2 );
ResistorClass( );
ResistorClass(
string Name, double nominalResistance, double Tolerance );
ResistorClass(
const ResistorClass &ResistorObject );
~ResistorClass( );
};
int main( void )
{
ResistorClass oResOne;
Resistor tolerance = 20%
ResistorClass oResTwo("Resistor 2",4700,20);
ResistorClass oResThree(oResTwo);
oResOne.DisplayResistor();
oResTwo.DisplayResistor();
oResThree.DisplayResistor();
system(
"pause");
return 0;
}
void ResistorClass:: DisplayResistor ( void )
{
cout << fixed << setprecision (2);
cout<<
"Values for "<<m_cResistorName<<" are: "<<endl;
cout<<
"Resistor Nominal Value = "<<m_dResValue<<endl;
cout<<
"ohmsResistorTolerance = "<<m_dTolerance*100<<" %"<<endl;
cout<<
"Mininimum Resistance = "<<m_dMinResistance<<" ohms"<<endl;
cout<<
"Maximum Resistance = "<<m_dMaxResistance<<" ohms"<<endl;
cout<<endl;
}
void ResistorClass::EnterResistance (void)
{
m_dResValue = -1;
while (m_dResValue < 1)
{
cout <<
"Enter Resistor Value: " <<endl;
cin >> m_dResValue;
if (m_dResValue < 1 || m_dResValue > 10000000)
{
cout <<
"Input Error Resistor Value must be > 1" << endl;
cout <<
"Please Enter a value that is > 1: " << endl;
cin >> m_dResValue;
}
else break;
}
m_dTolerance = -1;
while (m_dTolerance < 1)
{
cout <<
"Enter Resistor Tolerance: " << endl;
cin >> m_dTolerance;
if (m_dTolerance < 1 || m_dTolerance > 10000000)
{
cout <<
"Input Error Resistor Tolerance Value must be > 1: " << endl;
cout <<
"Please Enter a value that is > 1: " << endl;
cin >> m_dTolerance;
}
else break;
}
m_dTolerance = m_dTolerance/100;
m_dMinResistance = m_dResValue - (m_dResValue * m_dTolerance);
m_dMaxResistance = m_dResValue + (m_dResValue * m_dTolerance);
cout<<endl;
}
void ResistorClass:: AddSeries ( ResistorClass Resistor1, ResistorClass Resistor2)
{
if( Resistor1.m_dTolerance > Resistor2.m_dTolerance )
m_dTolerance =
Resistor1.m_dTolerance;
else
m_dTolerance =
Resistor2.m_dTolerance;
m_dResValue =
Resistor1.m_dResValue + Resistor2.m_dResValue;
m_dMinResistance = m_dResValue - (m_dResValue * m_dTolerance);
m_dMaxResistance = m_dResValue + (m_dResValue * m_dTolerance);
cout<<endl;
}
ResistorClass::ResistorClass( )
{
cout <<
"Enter Resistor Name <default>: " ;
getline(cin, m_cResistorName,
' ');
m_dResValue = 1000.0;
m_dTolerance = 0.10;
m_dMinResistance = m_dResValue - (m_dResValue * m_dTolerance);
m_dMaxResistance = m_dResValue + (m_dResValue * m_dTolerance);
cout <<endl<<
"Default Constructor Called:" <<endl;
}
ResistorClass::ResistorClass( string Name, double nominalResistance, double Tolerance )
{
cout <<endl<<
"Parameterized Constructor Called:" <<endl;
m_dResValue =
nominalResistance;
m_dTolerance =
double(Tolerance/100);
m_cResistorName =
Name;
m_dMinResistance = m_dResValue - (m_dResValue * m_dTolerance);
m_dMaxResistance = m_dResValue + (m_dResValue * m_dTolerance);
}
ResistorClass::ResistorClass(const ResistorClass &ResistorObject)
{
cout<<endl <<
"Enter Resister Name <copy>: ";
getline(cin, m_cResistorName,
' ');
m_dResValue=
ResistorObject.m_dResValue;
m_dTolerance=
ResistorObject.m_dTolerance;
m_dMaxResistance=
ResistorObject.m_dMaxResistance;
m_dMinResistance=
ResistorObject.m_dMinResistance;
cout <<endl<<
"Copy Constructor Called:"<<endl;
}
ResistorClass:: ~ResistorClass( )
{
cout <<
"Destructor Called "<<endl;
}
;>
Explanation / Answer
This should work:::
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
class ResistorClass
{
private:
double m_dResValue;
double m_dTolerance;
double m_dMinResistance;
double m_dMaxResistance;
public:
string m_cResistorName;
void DisplayResistor();
void EnterResistance();
void AddSeries (ResistorClass Resistor1, ResistorClass Resistor2 );
ResistorClass();
ResistorClass(string Name, double nominalResistance, double Tolerance );
ResistorClass(const ResistorClass &ResistorObject );
~ResistorClass( );
};
int main()
{
ResistorClass oResOne;
ResistorClass oResTwo("Resistor2",4700,20);
ResistorClass oResThree(oResTwo);
oResOne.DisplayResistor();
oResTwo.DisplayResistor();
oResThree.DisplayResistor();
return 0;
}
ResistorClass::ResistorClass( )
{
cout <<
"Enter Resistor Name <default>: " ;
getline(cin, m_cResistorName,
' ');
m_dResValue = 1000.0;
m_dTolerance = 0.10;
m_dMinResistance = m_dResValue - (m_dResValue * m_dTolerance);
m_dMaxResistance = m_dResValue + (m_dResValue * m_dTolerance);
cout <<endl<<
"Default Constructor Called:" <<endl;
}
ResistorClass::ResistorClass( string Name, double nominalResistance, double Tolerance )
{
cout <<endl<<
"Parameterized Constructor Called:" <<endl;
m_dResValue =
nominalResistance;
m_dTolerance =
double(Tolerance/100);
m_cResistorName =
Name;
m_dMinResistance = m_dResValue - (m_dResValue * m_dTolerance);
m_dMaxResistance = m_dResValue + (m_dResValue * m_dTolerance);
}
ResistorClass::ResistorClass(const ResistorClass &ResistorObject)
{
cout<<endl <<
"Enter Resister Name <copy>: ";
getline(cin, m_cResistorName,
' ');
m_dResValue=
ResistorObject.m_dResValue;
m_dTolerance=
ResistorObject.m_dTolerance;
m_dMaxResistance=
ResistorObject.m_dMaxResistance;
m_dMinResistance=
ResistorObject.m_dMinResistance;
cout <<endl<<
"Copy Constructor Called:"<<endl;
}
ResistorClass:: ~ResistorClass( )
{
cout <<
"Destructor Called "<<endl;
}
void ResistorClass:: DisplayResistor ()
{
cout << fixed << setprecision(2);
cout<<
"Values for "<<m_cResistorName<<" are: "<<endl;
cout<<
"Resistor Nominal Value = "<<m_dResValue<<endl;
cout<<
"ohmsResistorTolerance = "<<m_dTolerance*100<<" %"<<endl;
cout<<
"Mininimum Resistance = "<<m_dMinResistance<<" ohms"<<endl;
cout<<
"Maximum Resistance = "<<m_dMaxResistance<<" ohms"<<endl;
cout<<endl;
}
void ResistorClass::EnterResistance (void)
{
m_dResValue = -1;
while (m_dResValue < 1)
{
cout <<
"Enter Resistor Value: " <<endl;
cin >> m_dResValue;
if (m_dResValue < 1 || m_dResValue > 10000000)
{
cout <<
"Input Error Resistor Value must be > 1" << endl;
cout <<
"Please Enter a value that is > 1: " << endl;
cin >> m_dResValue;
}
else break;
}
m_dTolerance = -1;
while (m_dTolerance < 1)
{
cout <<
"Enter Resistor Tolerance: " << endl;
cin >> m_dTolerance;
if (m_dTolerance < 1 || m_dTolerance > 10000000)
{
cout <<
"Input Error Resistor Tolerance Value must be > 1: " << endl;
cout <<
"Please Enter a value that is > 1: " << endl;
cin >> m_dTolerance;
}
else break;
}
m_dTolerance = m_dTolerance/100;
m_dMinResistance = m_dResValue - (m_dResValue * m_dTolerance);
m_dMaxResistance = m_dResValue + (m_dResValue * m_dTolerance);
cout<<endl;
}
void ResistorClass:: AddSeries ( ResistorClass Resistor1, ResistorClass Resistor2)
{
if( Resistor1.m_dTolerance > Resistor2.m_dTolerance )
m_dTolerance =
Resistor1.m_dTolerance;
else
m_dTolerance =
Resistor2.m_dTolerance;
m_dResValue =
Resistor1.m_dResValue + Resistor2.m_dResValue;
m_dMinResistance = m_dResValue - (m_dResValue * m_dTolerance);
m_dMaxResistance = m_dResValue + (m_dResValue * m_dTolerance);
cout<<endl;
}
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.