변수와 기본 타입
int count = 3;
double ratio = 0.75;
char grade = 'A';
bool isReady = true;
auto total = count * 10;C++에서 가장 먼저 익혀야 하는 기본 타입, `auto`, 초기화 문법을 대학 수준으로 정리합니다.
Quick Reference
기초 문법부터 객체지향, 표준 라이브러리, 자원 관리까지 C++ 핵심 개념을 대학 수준으로 정리합니다.
제목, 요약, 태그, 섹션 제목 기준으로 찾습니다.
섹션
3 cards
int count = 3;
double ratio = 0.75;
char grade = 'A';
bool isReady = true;
auto total = count * 10;C++에서 가장 먼저 익혀야 하는 기본 타입, `auto`, 초기화 문법을 대학 수준으로 정리합니다.
std::string name = "Mina";
std::string& alias = name;
const std::string& view = name;복사를 줄이고 함수 인터페이스를 안전하게 만드는 C++ 참조와 `const` 기본 규칙을 정리합니다.
std::cout << "score = " << score << "\n";
std::cin >> age;
std::getline(std::cin, name);`std::cout`, `std::cin`, `std::getline`을 중심으로 C++ 표준 입출력의 기본 흐름을 정리합니다.
2 cards
if (score >= 90) {
grade = 'A';
} else if (score >= 80) {
grade = 'B';
} else {
grade = 'C';
}`if`, `else if`, `else`, `switch`를 이용한 C++ 기본 분기 구조를 정리합니다.
for (const auto& value : values) {
std::cout << value << "\n";
}`for`, range-based `for`, `while`을 중심으로 C++ 반복 처리의 핵심 패턴을 정리합니다.
3 cards
int add(int left, int right) {
return left + right;
}
double add(double left, double right) {
return left + right;
}함수 선언, 반환값, 기본 인자, 오버로딩처럼 C++ 함수 인터페이스의 핵심 규칙을 정리합니다.
class Player {
public:
void levelUp() { level++; }
private:
int level{1};
};데이터와 동작을 함께 묶는 C++ 클래스 선언과 객체 생성의 기본 구조를 정리합니다.
class User {
public:
User(std::string name, int level)
: name(std::move(name)), level(level) {}
private:
std::string name;
int level;
};객체 생성 시점을 제어하는 생성자와 멤버 초기화 리스트의 역할을 정리합니다.
1 cards
class Animal {
public:
virtual void speak() const { std::cout << "...\n"; }
};공통 인터페이스를 기반으로 동작을 바꿔 끼우는 C++ 상속과 다형성의 핵심을 정리합니다.
3 cards
std::vector<int> scores{90, 85, 100};
scores.push_back(70);
std::string title = "RefDock";가장 자주 쓰는 표준 컨테이너인 `std::vector`와 `std::string`의 기본 조작 패턴을 정리합니다.
std::map<std::string, int> ordered;
std::unordered_map<std::string, int> fastLookup;키로 값을 찾는 대표적인 표준 컨테이너인 `std::map`과 `std::unordered_map` 차이를 정리합니다.
std::sort(values.begin(), values.end());
auto it = std::find(values.begin(), values.end(), 10);`std::sort`, `std::find`, `std::find_if`를 중심으로 C++ 알고리즘 라이브러리의 기본 흐름을 정리합니다.
2 cards
auto user = std::make_unique<User>("Mina");
user->print();자원 수명 관리를 객체 수명과 묶는 RAII와 `std::unique_ptr` 중심의 현대 C++ 패턴을 정리합니다.
std::string name = "RefDock";
std::string target = std::move(name);복사 비용이 큰 객체를 더 효율적으로 옮기기 위한 C++ move semantics의 핵심 개념을 정리합니다.
2 cards
auto square = [](int x) { return x * x; };짧은 함수를 즉석에서 정의하는 C++ lambda 문법과 캡처 규칙의 기초를 정리합니다.
template <typename T>
T maxOf(T left, T right) {
return left > right ? left : right;
}타입을 매개변수처럼 받아 재사용 가능한 코드를 만드는 C++ 템플릿의 가장 기본적인 형태를 정리합니다.