현재 글 작성 시점에 C++20 표준의 module을 제대로 지원하는 컴파일러가 존재하지 않아, 간단한 개념과 사용 방법을 살펴보겠습니다.

개념 및 특징

  • 파일에 함수를 작성하여 import “모듈명” 으로 패키지화 하여 사용 할 수 있습니다. (java의 import와 비슷합니다.)
  • 헤더 부분에 import std.core; 와 같은 표기법으로 사용하도록 지원 될 예정입니다.
  • 모듈을 이용한 모듈화 프로그래밍이 수월해집니다.

예제

// math.ixx : 모듈 생성

export module math;

export int add(int first, int second)
{
    return first + second;
}

#include <iostream>

import math;

int main()
{
    int n = add(10, 20);
    
    std::cout << n << std::endl;
}

더 많은 C++20 관련 정보