c++类的小例子

软件和网站开发以及相关技术探讨
回复
shirazbj
帖子: 333
注册时间: 2010-01-30 18:38

c++类的小例子

#1

帖子 shirazbj » 2011-04-21 22:43

如下一个小例子,可以用g++编译过去。我想把它分成2个文件,一个main.cpp,一个CRectangle.cpp,还有一个CRectangle.h

简单试了一下,没成功。谁帮以下忙。先谢了。


// classes example
#include <iostream>
using namespace std;

class CRectangle {
int x, y;
public:
void set_values (int,int);
int area () {return (x*y);}
};

void CRectangle::set_values (int a, int b) {
x = a;
y = b;
}

int main () {
CRectangle rect;
rect.set_values (3,4);
cout << "area: " << rect.area();
return 0;
}
免费NanoCAD=免费DraftSight+可API编程(用.net或者vbs和java脚本)=白白 AutoCAD
http://nanocad.com/
shirazbj
帖子: 333
注册时间: 2010-01-30 18:38

Re: c++类的小例子

#2

帖子 shirazbj » 2011-04-21 22:46

//main.cpp
#include "CRectangle.h"

int main () {
CRectangle rect;
rect.set_values (3,4);
cout << "area: " << rect.area();
return 0;
}


对么?
免费NanoCAD=免费DraftSight+可API编程(用.net或者vbs和java脚本)=白白 AutoCAD
http://nanocad.com/
shirazbj
帖子: 333
注册时间: 2010-01-30 18:38

Re: c++类的小例子

#3

帖子 shirazbj » 2011-04-21 22:47

//CRectangle.cpp

//// classes example
#include <iostream>
#include "CRectangle.h"
using namespace std;

class CRectangle {
int x, y;
public:
void set_values (int,int);
int area () {return (x*y);}
};

void CRectangle::set_values (int a, int b) {
x = a;
y = b;
}

对么?

这个类的.h文件怎么写呀?
免费NanoCAD=免费DraftSight+可API编程(用.net或者vbs和java脚本)=白白 AutoCAD
http://nanocad.com/
头像
灰色小狼
帖子: 4585
注册时间: 2008-12-06 10:38
系统: Arch

Re: c++类的小例子

#4

帖子 灰色小狼 » 2011-04-21 22:51

代码: 全选

class CRectangle {
    
public:
    void set_values (int,int);
    int area () ;
private
    int x;
    int y;
};

代码: 全选

#include "CRectangle.h"

void CRectangle::set_values (int a, int b) {
    x = a;
    y = b;
}

int CRectangle::area ()  {
    return (x*y)
}

代码: 全选

#include <iostream>
#include "CRectangle.h"

int main () {
    CRectangle rect;
    rect.set_values (3,4);
    cout << "area: " << rect.area();
    return 0;
}
shirazbj
帖子: 333
注册时间: 2010-01-30 18:38

Re: c++类的小例子

#5

帖子 shirazbj » 2011-04-21 22:56

好了。谢谢。
免费NanoCAD=免费DraftSight+可API编程(用.net或者vbs和java脚本)=白白 AutoCAD
http://nanocad.com/
回复