TAG Clouds

New Postings

  • 당신이 진심으로 성공하고자 한다면, 자기 훈련을 두 번째 사랑으로, 목표설정을 첫 번째 사랑으로 삼아라.
    - 월터 크라이슬러


조회 수 14812 추천 수 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 영어 재밌는 영어 관용어들 1 Dreamy 2008.01.20 13396 14
184 교리교안 십자가를 찾아서 (프로그램) file Dreamy 2004.06.06 8840 14
183 성당 유다 복음 관련 기사(원문 포함) file Dreamy 2006.04.12 6064 13
182 프로그래밍 라이브러리 만드는법 Dreamy 2005.09.29 9651 9
181 프로그래밍 C language FAQ. file Dreamy 2006.07.14 8986 8
180 일반 바오밥나무 발아법(마다가스카 종) Dreamy 2006.08.16 8467 7
179 프로그래밍 REDIRECTION AND PIPELINE | 유닉스 기초 Dreamy 2005.08.05 10599 7
178 인터넷 ietoy 문맥메뉴가 정상작동 하지 않을 경우 대처법 Dreamy 2005.12.19 10500 6
177 인터넷 가져다 쓸수 있는 시계 태그 Dreamy 2005.12.22 9994 4
176 성가대 (프랑스어) 성모송 Je vous salue, Marie Dreamy 2024.04.23 219 0
175 성당 한국가톨릭작곡가 악보를 구입하는 방법 Dreamy 2023.10.17 607 0
174 멀티미디어 Whisper-WebUI 설치 Dreamy 2023.06.03 570 0
173 일반 맛있는 닭다리 간장 조림 Dreamy 2023.04.23 673 0
172 일반 DT71 미니 디지털 핀셋 사용 설명서 Dreamy 2023.02.03 637 0
171 일반 연어회 손질하기 Dreamy 2021.12.04 905 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