댓글 쓰기 권한이 없습니다. 로그인 하시겠습니까?
New Postings
New Comment
프로그래밍
2007.04.24 12:39
예제를 통해 Doxygen 주석 다는 방법 최대한 간단히 익히기
조회 수 14769 추천 수 38 댓글 0
style="FONT-WEIGHT: bold">나중에 까먹게 될 까봐 바로 사용할 수 있을 정도로 간략하게 간추려서
올림
* 예제는 실제 사용 중인 소스 코드를 타겟으로 함
* '최대한 간단히'
에 주목
* 설치 및 운용, 자세한 사용법에 대해서는 다루지 않음(아래 사이트들을 참조)
* 대신, 설정 템플릿 파일은 올려 둠(급할
href="http://wiki.kldp.org/wiki.php/Doxygen"
target=blank_>http://wiki.kldp.org/wiki.php/Doxygen title="이 링크를 새창으로 엽니다." style="TEXT-DECORATION: none"
href="http://wiki.kldp.org/wiki.php/Doxygen" target=_blank>
href="http://www.gpgstudy.com/gpgiki/DoxygenTutorial"
target=blank_>http://www.gpgstudy.com/gpgiki/DoxygenTutorial title="이 링크를 새창으로 엽니다." style="TEXT-DECORATION: none"
href="http://www.gpgstudy.com/gpgiki/DoxygenTutorial" target=_blank
수도 있으니까)
아래는 Doxygen 형식의 주석이 적용된 예제
소스이다.
[code type=cpp]/**
@file
PropertiesUtil.h
@brief CPropertiesUtil 클래스 선언 헤더
*/
#if
!defined(AFX_PROPERTIESUTIL_H__5B7DF824_3F5A_47F6_9AD3_A287733C8379__INCLUDED_)
#define
AFX_PROPERTIESUTIL_H__5B7DF824_3F5A_47F6_9AD3_A287733C8379__INCLUDED_
#if
_MSC_VER > 1000
#pragma once
#endif // _MSC_VER >
1000
#include
#define PROPERTY_LOAD_SUCCESS
1 /**< 파일 파싱까지 성공함 */
#define PROPERTY_LOAD_FILE_FAILED 0 /**< 파일 로드에
실패함 */
#define PROPERTY_ERROR_LINE_MUL -1 /**< 여기에 * n(에러 행 번호) 해서 리턴하게 됨
*/
/**
@brief 설정 파일을 읽어서 보관하는 클래스
설정 파일의 구조는 다음과 같다.
- 첫 글자가
# 이면 그 라인은 주석
- 빈 라인은 대상이 되지 않음
- '속성 = 값' 으로 이루어진다.
*/
class
AFX_EXT_CLASS CPropertiesUtil
{
public:
/**
* @brief 생성자\n
* 아무
일도 하지 않는다.
*
*/
CPropertiesUtil();
/**
* @brief 소멸자\n
*
아무 일도 하지 않는다.
*
*/
virtual ~CPropertiesUtil();
/**
@brief 설정
파일을 읽어들여서 파싱하고 각 설정들을 저장
@param szFileName 읽어들일 설정 파일 이름
@return 에러
유무
@see PROPERTY_ERROR_LINE_MUL
@see PROPERTY_LOAD_FILE_FAILED
@see
PROPERTY_LOAD_SUCCESS
*/
int LoadFile(const char *
szFileName);
/**
@brief 속성에 해당하는 값을 맵에서 찾아서 전달인자에 설정
@param
szKey 속성 이름
@param csValue 속성에 해당하는 값
@return 속성의 존재 유무
*/
BOOL
GetMatchedValue(const char * szKey, CString &
csValue);
private:
CMapStringToString m_mapKeyToVal; /**< 키와 값을
매핑시킨 객체 */
};
#endif //
!defined(AFX_PROPERTIESUTIL_H__5B7DF824_3F5A_47F6_9AD3_A287733C8379__INCLUDED_)[/code]
size=2>
JavaDoc 유저라면 보기만 해도 어떻게 하는 건지 짐작이 올 것이고, 아니어도 감이 올 거라 생각한다.
많은
주석 스타일 중에 JavaDoc 스타일을 선택하였고( /** ~ */ ) 속성도 필요한 것만 사용하였다.
속성들은 앞에 @를 붙이고 있다.
물론 다른 스타일은 !도 있는데, 여기서는 그냥 @만 생각하자.
file : 일반적으로 파일
명을 기술
brief : 함수에 대해 간략하게 기술
주의사항 -
상세 기술과 구분하기 위해 한 라인을 비워야 한다.
param :
파라미터에 대해 기술
see : 참조할 함수나 클래스,
define값, struct 등을 기술
return : 리턴값에 대해
기술
속성 없이 쓰여진 텍스트는 상세 기술이라고 생각하면
된다.
이제 Doxygen을 구동시키자. 구동시키면 첨부파일과 같은 내용의 html파일들이 쭉 나오고,
첨부파일은 이를
Doxygen이 chm으로 자동으로 컴파일해 준 것이다.
한번 열어서 확인해 보기 바란다.
doxygen_example_index.chm
style="FONT-WEIGHT: bold">
이제 C/C++ 유저도 JavaDoc를 부러워하지 말 지어다.
첨부파일 '3' |
---|
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 | 추천 수 |
---|---|---|---|---|---|---|
185 | 일반 | 윈도우 7 단축키 | Dreamy | 2011.05.19 | 6525 | 0 |
184 | 취미 | 원더걸스 예은 - 스마일 | Dreamy | 2012.10.18 | 4141 | 0 |
183 | 일반 | 외워두자 띄어쓰기 | Dreamy | 2019.03.21 | 1899 | 0 |
182 | 게임 | 와방 재미난 슈팅 게임 Ownage burst 2 | Dreamy | 2009.02.11 | 8062 | 0 |
181 | 취미 | 옥상달빛 - 수고했어 오늘도 | Dreamy | 2016.01.17 | 2005 | 0 |
180 | 문서작업 | 오피스 2013의 짜증나는 11가지 문제점과 해결 방법 | Dreamy | 2014.06.11 | 2407 | 0 |
179 | 게임 | 오토봇 스트롱홀드(트랜스포머) | Dreamy | 2009.08.08 | 12403 | 0 |
178 | 취미 | 오선지 프린트 하는 사이트 | Dreamy | 2012.07.22 | 3594 | 0 |
177 | 일반 | 오멜라스를 떠나는 사람들 - 어슐라 르 귄(Ursula Le Guin) | Dreamy | 2014.01.29 | 1940 | 0 |
176 | 수업 | 오렌지 북(Orange Book)과 ITSEC | Dreamy | 2004.06.25 | 9805 | 68 |
» | 프로그래밍 | 예제를 통해 Doxygen 주석 다는 방법 최대한 간단히 익히기 | Dreamy | 2007.04.24 | 14769 | 38 |
174 | 일반 | 영화 씬 시티(sin city) 대본 1 | Dreamy | 2006.07.13 | 9276 | 61 |
173 | 일반 | 영화 시카고 대본 4 | Dreamy | 2004.10.09 | 11467 | 71 |
172 | 일반 | 영화 매트릭스 2, 3 대본 | Dreamy | 2004.10.09 | 9536 | 99 |
171 | 영어 | 영어 접두사 6가지 쉽게 풀어보기 | Dreamy | 2015.08.18 | 1977 | 0 |
Designed by sketchbooks.co.kr / sketchbook5 board skin
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5