C언어

[C언어] 래퍼 함수(Wrapper Function)란?

_minit 2024. 10. 28. 13:51

래퍼 함수는 기존의 함수나 기능을 감싸서(Warp) 제공하는 함수이다. 래퍼 함수는 이매 존재하는 함수를 감싸는 방식으로 추가적인 기능을 추가하거나, 특정 함수 호출을 간단하게 만들어 코드의 재사용성을 높이는 역할을 한다. 이를 통해 코드의 가독성, 유지보수성, 그리고 이식성을 향상시킬 수 있다.

 

// 파일에 데이터를 쓰기 위한 코드 (래퍼 함수 사용 전)
FILE* file = fopen("data.txt", "w");
if (file != NULL) {
    fprintf(file, "Hello World\n");
    fclose(file);
} else {
    perror("File open failed");
}

 

// 파일에 데이터를 쓰기 위한 래퍼 함수 (래퍼 함수 사용 후)
void writeFile(const char* filename, const char* data) {
    FILE* file = fopen(filename, "w");
    if (file != NULL) {
        fprintf(file, "%s", data);
        fclose(file);
    } else {
        perror("File open failed");
    }
}

// 간단하게 파일에 데이터를 쓰는 호출
writeFile("data.txt", "Hello World\n");

 

래퍼 함수는 일반 함수에서 조금 더 신경 쓴 함수를 말하는 것이며 그냥 일반 함수라고 생각해도 무방할 것 같다.

728x90