1. 새 프로젝트를 단계별로 만들기
CLion에서 프로젝트는 단순한 파일 폴더가 아니라, IDE가 앞으로 만들 프로그램과 관련된 모든 것을 저장하는 하나의 컨테이너입니다. 프로젝트 안에는 소스 파일, 빌드 지시 사항, 컴파일러 설정이 들어 있습니다.
CLion 실행하기
시작 화면 Welcome Screen에서 큰 New Project 버튼을 누르세요. 이미 다른 프로젝트가 열려 있다면, 상단 메뉴에서 File -> New Project를 누르세요.
프로젝트 설정하기
창 왼쪽 메뉴를 보세요. 여러 템플릿(라이브러리, CUDA, Qt)이 있지만, 우리의 기본 선택은 일반 콘솔 애플리케이션입니다. 반드시 C++ Executable 항목을 선택하세요.
- Location: 컴퓨터에서 프로젝트가 저장될 경로입니다. 경로의 마지막 단어가 프로젝트 이름입니다. 기본값으로 두어도 되고, 변경해도 됩니다.
C++의 황금 규칙프로젝트 경로에는 절대로 키릴 문자와 공백이 들어가면 안 됩니다!
C:\Moi Proekty\Proekt 1같은 경로는 컴파일러를 거의 확실하게 망가뜨립니다(특히 Windows에서). 라틴 문자와 밑줄만 사용하세요(예:C:\Projects\cppFirst). - Language standard: 언어 표준입니다. C++는 계속 발전하며, 3년마다 새로운 편의 기능이 포함된 새 표준이 나옵니다. 이 강의에서는 C++23을 선택하세요. 이렇게 하면 컴파일러에 가장 현대적인 언어 규칙을 사용하겠다고 알리게 됩니다.
- Add onboarding tips (온보딩 팁 추가): 이 체크박스를 선택하면 CLion이 예제 코드와 특수 주석이 들어 있는 기본
main.cpp파일을 자동으로 생성합니다. 이 주석들은 코드 안에서 바로 기본 단축키를 알려 줍니다. 예를 들어 프로그램을 빠르게 실행하는 방법(Run), 디버거용 중단점(breakpoint)을 놓는 방법, 필요한 메뉴를 찾는 방법 등을 안내합니다.
Create를 누르세요.
CLion이 폴더 구조를 만들고 편집기의 메인 창을 엽니다. 화면 아래에는 Loading CMake project... 또는 Indexing...라는 문구가 나타날 수 있는데, 이는 IDE가 내장 Toolchain을 설정하고 파일을 읽는 중이라는 뜻입니다. 아래쪽에 초록 체크 표시나 CMake project finished라는 문구가 나타날 때까지 기다리세요.
Windows에서 처음 실행할 때 IDE의 팝업 알림 "Microsoft Defender might be impacting your build performance"를 볼 수 있습니다. 반드시 동의하고 Automatically 또는 Exclude folders를 누르세요. Windows의 기본 보안 기능은 디스크에 새로 생기는 모든 파일을 검사합니다. C++ 프로젝트를 컴파일하는 동안 수백 개의 임시 오브젝트 파일이 생성되는데, 안티바이러스가 그것들을 하나씩 모두 검사하면 빌드 속도가 몇 배나 느려질 수 있습니다. 프로젝트 폴더를 예외 목록에 추가하면 이 문제가 해결되고, 컴파일러가 최고 속도로 동작할 수 있습니다.
2. CLion 인터페이스 빠르게 둘러보기
CLion에서는 설정 깊숙이 들어가지 않아도 전체 인터페이스(글꼴, 메뉴, 버튼)의 배율을 쉽고 빠르게 바꿀 수 있습니다. 확대하려면 Alt + Shift + =(Mac에서는 Cmd + Shift + =)를, 축소하려면 Alt + Shift + -를 사용하세요. 메인 메뉴를 통해서도 가능합니다: Settings -> Appearance & Behavior -> Appearance -> Zoom IDE.
프로젝트를 만들고 나면 main.cpp 파일이 열린 코드 에디터가 나타납니다. 이제 작업 창의 주요 영역을 살펴보겠습니다.
- 1. Tool Windows Bar (도구 창 사이드바) — 왼쪽의 가느다란 세로 막대입니다. 아이콘을 누르면 구조 창, CMake 탭, 출력 콘솔이 있는 Run 패널 같은 다양한 보조 도구가 열립니다.
- 2. Project Tool Window (프로젝트 창) — 왼쪽에서 펼쳐지는 패널로, 탐색의 핵심 창입니다. 여기에는 프로젝트의 전체 구조, 폴더, 파일이 표시됩니다. 실수로 닫았다면
Alt + 1(또는Cmd + 1)을 눌러 다시 열 수 있습니다. - 3. 코드 에디터 (Editor) — 가장 큰 중앙 영역입니다. 지금은
main.cpp파일의 코드가 열려 있습니다. - 4. 상단 패널 (Top Toolbar) — CMake 구성 전환기와 프로그램 실행(Run ▶) 및 디버그(Debug)용 주요 버튼이 있는 위쪽 바입니다.
매번 Ctrl + S를 누를 필요는 없습니다. CLion은 매번 실행(Build) 전에, 그리고 다른 창으로 전환할 때 모든 파일을 자동으로 저장합니다. 그래서 코드를 잃어버릴 일이 없습니다.
C++ 프로젝트 구조
왼쪽의 프로젝트 구조(Project 창)를 좀 더 자세히 살펴봅시다.
-
.idea— CLion 환경 설정이 저장되는 내부 폴더입니다(나중에 보일 수 있습니다). 이 폴더는 수동으로 수정할 필요가 없습니다. -
cmake-build-debug— 결과물을 만들어 내는 공장 같은 폴더입니다. 컴파일러와 링커가 작업 결과를 바로 여기에 저장합니다. 완성된.exe파일(또는 실행 바이너리)도 빌드가 성공하면 바로 이곳에 생성됩니다. -
CMakeLists.txt— 프로젝트 빌드의 심장부입니다. 일종의 레시피 파일입니다. 여기에는 프로젝트 이름, 필요한 표준(C++23), 컴파일해야 할 파일 목록(main.cpp)이 적혀 있습니다. 초보자를 위한 가장 중요한 규칙: 지금은 이 파일을 직접 삭제하거나 수정하지 마세요. IDE가 이 파일을 대신 관리합니다. 여러분이나 플러그인이 프로젝트 구조를 바꿨다면, CLion은 순환 화살표가 있는 작은 아이콘(Reload CMake Project)을 표시합니다. IDE가 빌드 레시피를 다시 읽도록 반드시 그것을 누르세요. -
main.cpp— 여러분의 소스 코드입니다..cpp확장자는 C Plus Plus를 뜻합니다. -
External Libraries— 가상 폴더입니다(여기에는 여러분의 파일이 들어 있지 않습니다). CLion이 컴파일러와 C++ 표준 라이브러리의 헤더 파일을 자동으로 이곳에 모아 보여 줍니다. -
Scratches and Consoles— 여러분의 "초안"을 위한 특별 섹션입니다. 수식이나 복잡한 반복문이 어떻게 동작하는지 빠르게 확인하고 싶지만 기존main.cpp를 망치고 싶지 않다면 임시 Scratch 파일을 만들 수 있습니다. 이런 파일은 CMake 빌드 시스템과 분리되어 있으며, 일회성 실험을 위한 훌륭한 샌드박스 역할을 합니다.
3. 첫 코드의 구조
우리는 학습용 팁이 포함된 프로젝트 생성을 선택했기 때문에, CLion은 단순한 빈 파일이 아니라 인터랙티브 예제를 생성해 주었습니다. main.cpp를 열어 보세요. 일반 메모장에서는 이 코드가 온갖 태그와 함께 보이지만, CLion 편집기 안에서는 이런 태그가 보기 좋은 클릭 가능한 아이콘과 초록 버튼으로 바뀝니다. 이제 코드를 하나씩 살펴봅시다.
// TIP ...— 바로 그 인터랙티브 팁입니다. IDE가 실행, 변수 이름 변경, 디버깅을 위한 단축키를 알려 줍니다.#include <iostream>— 표준 입출력 라이브러리를 연결하라고 컴파일러에 요청하는 줄입니다. 이 줄이 없으면 C++는 화면에 텍스트를 출력하는 방법을 알지 못합니다.int main()— "진입점"입니다. 모든 C++ 프로그램은 바로main함수에서 실행을 시작합니다.auto lang = "C++";—lang이라는 변수를 만들었습니다. 키워드auto는 여기에 어떤 자료형이 필요한지 컴파일러가 스스로 추론하게 만듭니다(이 경우 문자열입니다).std::cout << ...— 화면에 텍스트를 출력하는 명령입니다. 연산자<<를 사용해 텍스트와 변수를 "이어 붙일" 수 있습니다.for (int i = 1; i <= 5; i++)— 반복문입니다. 중괄호 안의 코드는 정확히 5번 실행됩니다(1부터 5까지).-
return 0;— 운영체제에 보내는 직접적인 보고서입니다.main함수가int로 시작한다는 것은 "나는 정수를 반환해야 한다"는 뜻입니다. 실행이return 0;에 도달하면, 프로그램은 말 그대로 이 0을 운영체제에 넘기며 "모든 것이 잘 끝났습니다"라고 알립니다. CLion은 이 응답을 가로채서 콘솔에Process finished with exit code 0라고 출력합니다. (실험 삼아 여기서return 1;을 써 보고 코드를 실행해 보세요. 콘솔의 응답이 어떻게 달라지는지 볼 수 있습니다!)
왼쪽 여백에 있는 빨간 원(TIP 중 하나에서 언급되는 것)은 디버그 모드용 중단점(breakpoint)입니다. 이것에 대해서는 나중에 이야기하겠습니다. 실수로 이런 점을 찍었다면, 제거하려고 그 점을 마우스로 한 번 더 클릭하면 됩니다.
4. 프로그램 실행: Build vs Run
브라우저에서는 보통 그냥 "Run"만 누르면 됩니다. 하지만 로컬 IDE에서(그리고 일반적으로 C++에서는) 동작 방식이 조금 더 복잡합니다. 실행 버튼을 누르면 두 단계로 이루어진 파이프라인이 시작됩니다.
flowchart TD
A[▶ 버튼 클릭] --> B[1단계: Build 빌드]
B -->|성공| C[2단계: Run 실행]
B -->|문법 오류| D[중단: Build / Problems 창 확인]
C --> E[프로그램 실행: Run / Console 창 확인]
int main() 함수 왼쪽 여백에 초록색 삼각형 ▶이 있습니다. 그것을 누르고 Run 'cppFirst'를 선택하세요.
아래쪽에 Run / Console 도구 창이 열리고, 실행 결과가 보일 것입니다.
- 먼저 IDE가 CMake를 호출하고, 그다음 컴파일러와 링커를 호출합니다. 이것이 Build 단계입니다.
- 그다음 IDE가 완성된 실행 파일을 시작합니다. 이것이 Run 단계입니다.
- 콘솔 창에서는 다음을 보게 됩니다:
이 출력을 줄별로 살펴봅시다.
실행 명령 — 여러분이 컴파일한 실행 파일 I:\cppFirst\main.exe의 전체 경로입니다. CLion이 명령을 구성해서 여러분 대신 완성된 바이너리를 실행한 것입니다.
프로그램 출력 (일반 텍스트) — 여러분의 std::cout 명령이 만들어 낸 결과입니다.
종료 코드: Process finished with exit code 0. 이것은 운영체제를 위한 최종 보고입니다. 업계 표준에 따르면 exit code 0은 프로그램이 모든 명령을 성공적으로 실행하고 오류 없이 종료되었다는 뜻입니다.
;을 지웠다면), 프로그램은
실행되지 않습니다. 출력 콘솔은 보이지 않을 것입니다. 대신 CLion이
Build 창(또는 Problems 창)을 열고, 그곳에 컴파일러 오류가 빨간 글씨로 표시됩니다. 이 단계를 구별하는 습관을 들이세요. 코드 오류는 Build 창에서 찾고, 실행 결과는 Run 창에서 봅니다.
5. Live Templates와 단축키
똑같은 반복 코드를 매번 손으로 입력하는 것은 지루하고 오래 걸리며, 오타까지 유발합니다. CLion에는 매우 강력한 Live Templates 시스템이 내장되어 있습니다. 이것은 "똑똑한" 축약어입니다. 몇 글자만 입력하고 Tab을 누르면 곧바로 완전한 코드 블록으로 펼쳐집니다.
하지만 여기서 끝이 아닙니다! 템플릿이 펼쳐진 뒤에는 IDE가 커서를 정확히 변수 이름이나 조건을 입력해야 하는 위치에 놓아 줍니다. 첫 번째 칸을 채웠나요? Tab을 누르면 커서가 즉시 다음 매개변수로 이동합니다.
1. 카운터가 있는 고전적인 반복문: for
세미콜론과 증가식을 손으로 전부 입력하는 대신, 그냥 for를 입력하고 Tab을 누르세요.
끝값만 입력하고 Tab을 한 번 더 누르면 커서가 중괄호 안으로 바로 이동합니다. 빠르고, 문법 오류도 없습니다!
2. 현대적인 Range-based 반복문: iter
현대 C++에서는 컬렉션의 요소를 직접 순회하는 일이 많습니다. iter를 입력하고 Tab을 누르세요.
// IDEga for-each banbokmun-eul saengseonghamnida:
for (auto &item : collection) {
// keoseoga yeogiro idong
}
3. 완벽한 클래스 골격: class
새 자료형을 만들고 있나요? class + Tab을 입력하세요. CLion은 구조를 펼쳐 줄 뿐 아니라 public: 섹션도 추가해 줍니다. 그리고 가장 중요한 점으로, 초보자가 늘 잊어버려 혹독한 컴파일 오류를 겪게 되는 닫는 중괄호 뒤 필수 세미콜론 };도 자동으로 넣어 줍니다.
class MyClass {
public:
// keoseoga jeuksi yeoreobunui meseodeureul gidarimnida
};
4. 네임스페이스: ns
로직을 빠르게 네임스페이스로 감싸고 함수 이름 충돌을 방지하고 싶다면(이전 강의에서 이야기한 것처럼), 축약어 ns + Tab을 입력하세요.
namespace my_namespace {
// keoseo
}
5. 나만의 템플릿 만들기! (예: cout)
Live Templates의 가장 멋진 점은 직접 만들 수 있다는 것입니다! C++에서는 출력용으로 std::cout << ... << '\n'; 같은 다소 긴 구문을 자주 써야 합니다.
설정으로 들어가서 Settings -> Editor -> Live Templates -> C/C++를 열고, 플러스 버튼을 눌러 나만의 템플릿을 만들 수 있습니다. 이름을 cout으로 지정하고 원하는 코드를 입력하세요. 이제 겨우 네 글자만으로도 1년 개발 동안 수천 번의 키 입력을 아낄 수 있습니다!
어디서나 검색: Shift + Shift
파일을 잃어버렸거나, 클래스가 어디에 있는지 잊었거나, 메뉴에서 필요한 설정을 찾지 못했더라도 당황하지 마세요.
그냥 Shift 키를 두 번 연속으로 누르세요.
Search Everywhere (전체 검색) 창이 열립니다. 파일 이름, 클래스 이름, 심지어 설정 이름(예: "Font size")까지 입력하기 시작하면 IDE가 즉시 찾아 줍니다.
IDE는 탐색과 디버깅을 위한 다른 많은 단축키도 지원합니다. 그것들은 JetBrains 문서에서 확인하거나, IDE 메뉴의 Help -> Keyboard Shortcuts PDF에서 바로 볼 수 있습니다.
코드 빠르게 주석 처리하기
학습하는 동안에는 코드의 일부를 잠시 꺼 두고 다른 아이디어를 확인해 보고 싶을 때가 자주 있습니다. 하지만 써 놓은 코드를 지우기는 아깝죠. 매 줄 앞에 //를 손으로 하나씩 입력하는 것은 시간 낭비입니다.
필요한 줄을 선택하고 Ctrl + / 또는 Mac에서는 Cmd + /를 누르세요. CLion이 즉시 전체 블록을 주석 처리합니다. 같은 키를 다시 누르면 주석이 해제됩니다. Windows에서는 입력 언어가 영어여야 합니다.
IDE의 메모리 용량(Memory Heap) 늘리기
CLion은 엄청나게 강력한 도구입니다. 지속적으로 C++ 코드를 읽고, #include에 대한 종속성 트리를 구축하고, 즉시 Clang-Tidy 검사를 실행하고, CMake 파일을 인덱싱합니다. 이 모든 작업에는 컴퓨터 리소스, 주로 RAM(Random Access Memory)이 필요합니다.
기본적으로 CLion은 컴퓨터의 다른 프로그램을 방해하지 않도록 보수적인 메모리 소비 한도(보통 약 2GB)를 설정합니다. 하지만 IDE가 "지연"되기 시작하거나 인터페이스가 지연되어 응답하거나 오른쪽 하단 모서리에 «Low Memory» 경고가 표시되는 것을 확인했다면 "지휘자"에게 작업할 공간을 더 줄 때입니다.
메모리 한도를 늘리는 방법:
- CLion의 기본 상단 메뉴에서 Help | Change Memory Settings를 선택합니다.
- 나타나는 작은 Maximum Heap Size 창에서 현재 값을 볼 수 있습니다.
- 이 값을 늘리세요. 컴퓨터의 RAM이 8GB 이상인 경우 자유롭게
4096으로 설정하세요. 편안한 학습과 중간 규모 프로젝트 작업에 충분할 것입니다. - Save and Restart 버튼을 클릭합니다. IDE는 설정을 저장하고 새로 사용 가능한 메모리 용량으로 즉시 다시 시작됩니다.
메모리 소비에 대한 자세한 정보는 공식 JetBrains 문서에서 확인할 수 있습니다: Increasing the memory heap of the IDE.
GO TO FULL VERSION