TAG Clouds

New Postings

  • 진보라는 것은 변화와는 거리가 멀고 오히려 기억에 의존한다. 과거를 기억하지 못하는 사람은 과거를 반복할 운명이다.
    - 조지 산타야나, 이성의 삶


조회 수 14539 추천 수 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 "stdafx.h"

#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를 부러워하지 말 지어다.




List of Articles
번호 분류 제목 글쓴이 날짜 조회 수 추천 수
185 성가대 특송 후보곡들 file Dreamy 2006.10.17 9576 46
184 일반 embed tag 설명 Dreamy 2006.10.24 9440 44
183 성가대 '저는 당신만을' 악보 file Dreamy 2007.02.03 11277 49
» 프로그래밍 예제를 통해 Doxygen 주석 다는 방법 최대한 간단히 익히기 file Dreamy 2007.04.24 14539 38
181 인터넷 사진을 문자로 변환을 시켜주는 사이트 file Dreamy 2007.07.18 11379 56
180 일반 영문 편지에 유용한 표현 Dreamy 2007.08.09 10925 39
179 영어 재밌는 영어 관용어들 1 Dreamy 2008.01.20 13168 14
178 문서작업 [HTML iframe]아이프레임(iframe) Dreamy 2008.02.26 21048 42
177 성가대 라틴어 발음법 1 file Dreamy 2008.06.04 18068 14
176 일반 아스키 아트 사이트 Dreamy 2008.08.20 12281 0
175 일반 [역전세란 대응방법]...전세사는 분들만 보세요. (아고라펌) Dreamy 2008.12.04 8276 0
174 성가대 악보 연주기호 정리 file Dreamy 2008.12.26 13643 0
173 게임 Auditorium 음악게임 Dreamy 2009.01.25 9591 0
172 게임 SONNY2, 턴 방식의 RPG게임 Dreamy 2009.01.25 10011 0
171 게임 [배틀 기어] 횡스크롤 2차 세계 대전 Dreamy 2009.01.25 8194 0
Board Pagination ‹ Prev 1 2 3 4 5 6 7 8 9 10 11 12 ... 17 Next ›
/ 17

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5