请C++各位高手帮帮忙

为何总说有错误,

#include<iostream.h>
class Rectangle{
private:
typedef float LengthType;
typedef float AreaType;
LengthType width,height;

public:
void SetWidth(LengthType newWidth);
void SetHeight(LengthType newHeight);
AreaType Area();
LengthType Perimeter();
};

void Rectangle::SetWidth(LengthType newWidth)
{
width=newWidth;
}

void Rectangle::SetHeight(LengthType newHeight)
{
height=newHeight;
}

Rectangle::AreaType Rectangle::Area()
{
return heigth*width;
}

Rectangle::LengthType::Rectangle::Perimeter()
{
return 2*(width+height);
}

void main()
{
Rectangle rect;
rect.SetWidth(45);
rect.SetHeight(54.2);
cout<<"The area of rectangle is"<<rect.Area()<<endl;
cout<<"The perimeter of rectangle is"<<rect.Perimeter()<<endl;

}
请问如何初始化呢,可否写出;
答案可否详细一点.
本人还是C++的自学者,还有部分知识还未掌握,我试过添加了还不能,这就是整个程序了

一般用VC创建类的时候有默认的构造函数和析构函数,如果编译还有初始化问题那就把类中的变量定义及函数初始化一下,指定个空值或初始值。
再就是看错误提示,没有错误提示我也不好说,毕竟你贴的只是一个片段,
最常犯的错误就是初始化问题和忘记包含头文件,还有就是一些小的语法错误如拉了个分号什么的。
你把错误提示粘上来看看
温馨提示:内容为网友见解,仅供参考
第1个回答  2007-01-27
Rectangle rect;

对象没有初始化

------------------补充回答---------------------
Rectangle& rect = Rectangle();
第2个回答  2007-01-27
你应该编写构造函数来完成默认的初始化工作

请各位C++高手帮我看一下这道简单的C++选择题.
c错了,析构函数 不能带任何参数。析构函数与 构造函数 相反,当对象脱离其 作用域 时(例如对象所在的函数已调用完毕),系统自动执行析构函数。析构函数往往用来做“清理善后”的工作(例如在建立对象时用new开辟了一片内存空间,应在退出前在析构函数中用delete释放)。

c++编程中遇到的问题,请各位电脑高手帮忙解决
1. 打开一个命令行窗口: 开始->运行, 输入"cmd", 回车 2. 在命令行窗口中输入: msdev \/useenv 回车就好了 ps. msdev就是msdev.exe,就是VC IDE程序, 所以你输入msdev.exe \/useenv也可以.就是表示启动这个程序,并加了一个命令行选项.具体程序在这里:C:\\Program Files\\Microsoft Visual Studio\\...

现有一道 C++编程题,请各位高手能够鼎力相助。速求……急!
回答:长见识了啊...感谢楼主!

C++程序出错了,请求高手帮忙?
include <iostream> using namespace std;void swap(int,int);void swap(int *p1,int *p2){ int p;p=*p1;p1=*p2;p2=p;} void main(){ int a,b;scanf("%d,%d",&a,&b);if(a

C++问题,请各位高手赐教
同意 希声和寡 的答,简单精辟 补充一句,这是最有效的交换两数的值的代码。

请教c c++高手
stdin);goto kk;} ls各位已经解释得差不多了~. 数据类型是一个问题,输入的字母是char型而你定义的是int型,c教材上有说说使用goto会出现不可预测的结果指的就是这个了(第一次见到~ 收藏先 )。 代码修改如上就没有问题了,在输出cccc之后马上清空内存缓冲区之后goto才就有时间等待scanf~...

...不用回车就能直接返回结果 这样要怎么做到 请各位高手 帮帮我...
1. 输入数的位数确定:(比如一定是一位数,或一定是两位数)使用char ch; scanf("%c", &ch); 或 cin>>ch; 逐位获得输入,然后自己转换为整数类型。(具体转换方法请上网查找)2. 输入数的位数不确定:(比如有可能是两位数 有可能是三位数)没有办法做到,必须有一个结束的标志(即使不用...

各位c++高手帮下忙哈!!
请采用void *memcpy( void *dest, const void *src, size_t count );函数 你代码可修改为 include "stdafx.h"include <stdio.h> include <string.h>\/\/库函数头文件用<> 自定义头文件用""include <memory.h> void main(){ char c6[30];int z;scanf("%d",&z);switch(z){ case 1:...

VC++编译出错,错误代码:error C1189,请各位高手指点一下。
1.工程-》属性-》C\/C++-》代码生成-》运行时库:修改成: 多线程调试(\/MTd); (release版本也修改成 多线程(\/MT)2.工程-》属性-》常规-》MFC的使用:修改为:在静态库中使用 MFC 方法2不一定管用,PC机上的MFC(相对于EVC而言)程序都是多线程的(不信你照2修改试试,会出现找不到_...

c++ 跪求一个定飞机票座位的程序。。。各位高手帮帮小弟啊,俺新手...
printf("\\n请输入你所定座位的行号(1~7行):\\n");fflush(stdin);scanf("%d",&hang);if((hang<1)||(hang>7)){ printf("无效输入!\\n");continue;} printf("请输入你所定座位的列号(A,B,C,D):\\n");fflush(stdin);scanf("%c",&lie);if((lie<'A')||(lie>'D')){ printf...

相似回答
大家正在搜