1998.7.27 조경민
DJGPP=-
클래스 라이브러리 만들기
======================================
클래스 제작 형식
헤더 부 x.h
class x{
:
};
소스 부 x.cpp
x::x()
{
}
:
이런식으로 한다음
x.cpp를 오브젝으로 만들고
쓸때는 h파일을 붙여 오는 식으로 하면 된다.
라이브러리 만들기
먼저 이 cpp 화일을 obj화일로 만든다.
gcc -c xxx.cpp
다음 xxx.cpp 파일의 헤더 파일을 만든다.
그러나 함수의 내용은 모두 없앤다. 단 inline의 성격이 있는 함수의 내용은
그대로 남겨둔다. 즉 클래스 안에서 함수를 선언할 경우 컴파일러는 함수를
최적화방법으로 이 함수를 inline화 한다. 이런 함수는 그냥 내용을 남겨둔다.
물론 외부에 inline으로 한것 또한 그냥 남겨둔다.
class xxx {
public:
int x;
xxx(){x=10;} // 남겨둔다.
void print();
};
void xxx::print() // 이 함수 부분을 지운다.
{
:
}
inline int xxx:get() // 남겨 둔다.
{
return x;
}
다 했다면 이 파일을 xxx.h 이라고 해둔다.
나중에 쓰기 위해서는
game.cpp 라는 프로그램에서 쓸ㄸㅒ는
game.cpp 윗 부분에
#include "xxx.h"
를 하고 이 클래스를 코드상으로 쓴다.
그리고 컴파일시는
gcc game.cpp -o game.exe xxx.o
DJGPP=-
클래스 라이브러리 만들기
======================================
클래스 제작 형식
헤더 부 x.h
class x{
:
};
소스 부 x.cpp
x::x()
{
}
:
이런식으로 한다음
x.cpp를 오브젝으로 만들고
쓸때는 h파일을 붙여 오는 식으로 하면 된다.
라이브러리 만들기
먼저 이 cpp 화일을 obj화일로 만든다.
gcc -c xxx.cpp
다음 xxx.cpp 파일의 헤더 파일을 만든다.
그러나 함수의 내용은 모두 없앤다. 단 inline의 성격이 있는 함수의 내용은
그대로 남겨둔다. 즉 클래스 안에서 함수를 선언할 경우 컴파일러는 함수를
최적화방법으로 이 함수를 inline화 한다. 이런 함수는 그냥 내용을 남겨둔다.
물론 외부에 inline으로 한것 또한 그냥 남겨둔다.
class xxx {
public:
int x;
xxx(){x=10;} // 남겨둔다.
void print();
};
void xxx::print() // 이 함수 부분을 지운다.
{
:
}
inline int xxx:get() // 남겨 둔다.
{
return x;
}
다 했다면 이 파일을 xxx.h 이라고 해둔다.
나중에 쓰기 위해서는
game.cpp 라는 프로그램에서 쓸ㄸㅒ는
game.cpp 윗 부분에
#include "xxx.h"
를 하고 이 클래스를 코드상으로 쓴다.
그리고 컴파일시는
gcc game.cpp -o game.exe xxx.o
'KB > C/C++' 카테고리의 다른 글
C & C++ Tip 1001 (0) | 2004.03.19 |
---|---|
비트찍기 (0) | 2004.03.19 |
class에 대한 잡담 (0) | 2004.03.19 |
dos에서 vga13h 쓰기 (0) | 2004.03.19 |
this에 대하여 (0) | 2004.03.19 |