我检查并重新检查以下代码,我没有看到编译器正在讨论什么。我是c ++的新手,所以请详细说明!
代码是:
//myheader.h:
#ifndef MYHEADER_H
#define MYHEADER_H
class myHeader
{
public:
//mutators
void setWidth(int);
void setLength(int);
//accessors
int getWidth();
int getLength();
myHeader();
virtual ~myHeader();
private:
int width,
length;
};
#endif // MYHEADER_H
myheader cpp看起来像这样:
#include "myHeader.h"
myHeader::myHeader()
{
//ctor
/* void setWidth(int w);
void setLength(int l);
int getWidth();
int getLength();
*/
}
myHeader::~myHeader()
{
//dtor
}
//setWidth will assign a value to the private member width
void myHeader::setWidth(int w)
{
width = w;
}
//setLength will assign a value to the private member Length
void myHeader::setLength(int l)
{
length = l;
}
//getWidth will return the value for the width member
int myHeader::getWidth()
{
return width;
}
//getLength will return the value for the length member
int myHeader::getLength()
{
return length;
}
主要尚未完成,看起来像这样:
#include "myHeader.h"
#include <iostream>
using namespace std;
int main()
{
myHeader impleHeader;
int locLength = 0;
int locWidth = 0;
cout<<"width / length";
cin>>locLength>>locWidth;
myHeader.setLength(locLength);
myHeader.setWidth(locWidth);
return 0;
}
我没有看到任何问题,但训练有素的眼睛肯定能发现它。请告诉我我做错了什么
答案 0 :(得分:2)
myHeader
是类型的名称,而不是对象。
您想在对象setLength()
上调用setWidth()
和impleHeader
:
impleHeader.setLength(locLength);
impleHeader.setWidth(locWidth);