改错#include<iostream> #ifndef CFORM_H #define CFORM_H using namespace std; class CForm { public: CForm(); CForm(const string& title,int width,int height); ~CForm(); void SetTitle(const string& title); void SetSize(int width,int height); void Show()const; private: string title; int width; int height; }; #endif #include"CForm.h" CForm::CForm():title("Untitled"),width(300),height(200){ cout<<"创建窗口"<<title<<endl; } CForm::CForm(const string& t,int w,int h):title(t),width(w),height(h){ cout<<"创建窗口"<<title<<endl; } CForm::~CForm(){ cout<<"关闭窗口"<<title<<endl; } void CForm::SetTitle(const string& t) { this->title=t; } void CForm::SetSize(int w,int h) { this->width=w; this->height=h; } void CForm::Show()const { cout<<"窗体标题为"<<title<<endl; cout<<"窗口大小为:"<<width<<"x"<<height<<endl; } #include"CForm.h" int main() { CForm form1; form1.SetTitle("My Form"); form1.SetSize(400,350); form1.Show(); CForm form2("Your Form",600,480); form2.Show(); return 0; }
时间: 2024-03-10 21:44:15 浏览: 54
#include <iostream> #include<iomanip> using namespace std;九九乘法表
修改后的代码如下:
```
#include<iostream>
#ifndef CFORM_H
#define CFORM_H
using namespace std;
class CForm {
public:
CForm();
CForm(const string& title, int width, int height);
~CForm();
void SetTitle(const string& title);
void SetSize(int width, int height);
void Show() const;
private:
string title;
int width;
int height;
};
#endif
#include "CForm.h"
CForm::CForm() : title("Untitled"), width(300), height(200) {
cout << "创建窗口" << title << endl;
}
CForm::CForm(const string& t, int w, int h) : title(t), width(w), height(h) {
cout << "创建窗口" << title << endl;
}
CForm::~CForm() {
cout << "关闭窗口" << title << endl;
}
void CForm::SetTitle(const string& t) {
this->title = t;
}
void CForm::SetSize(int w, int h) {
this->width = w;
this->height = h;
}
void CForm::Show() const {
cout << "窗体标题为" << title << endl;
cout << "窗口大小为:" << width << "x" << height << endl;
}
int main() {
CForm form1;
form1.SetTitle("My Form");
form1.SetSize(400, 350);
form1.Show();
CForm form2("Your Form", 600, 480);
form2.Show();
return 0;
}
```
主要的修改是将头文件的 `using namespace std;` 移到头文件外面,因为头文件通常会被其他文件包含,如果在头文件内部使用了 `using namespace std;`,会导致其他文件也使用了相同的命名空间,可能会导致命名冲突。
阅读全文