⚡ C++ 치트시트
고성능 시스템 프로그래밍을 위한 언어
기본 문법
변수 선언
int number = 42;
double price = 19.99;
char letter = 'A';
bool isActive = true;
조건문
if (condition) {
statement;
} else if (otherCondition) {
otherStatement;
} else {
defaultStatement;
}
반복문
for (int i = 0; i < 10; i++) {
cout << i << endl;
}
while (condition) {
statement;
}
함수 정의
int add(int a, int b) {
return a + b;
}
void printMessage(const string& message) {
cout << message << endl;
}
클래스와 객체
클래스 정의
class Rectangle {
private:
double width, height;
public:
Rectangle(double w, double h) : width(w), height(h) {}
double getArea() const { return width * height; }
};
상속
class Square : public Rectangle {
public:
Square(double side) : Rectangle(side, side) {}
};
가상 함수
class Shape {
public:
virtual double getArea() const = 0;
virtual ~Shape() = default;
};
템플릿
template<typename T>
T maximum(T a, T b) {
return (a > b) ? a : b;
}
STL 컨테이너
벡터
#include <vector>
vector<int> numbers = {1, 2, 3, 4, 5};
numbers.push_back(6);
int first = numbers[0];
맵
#include <map>
map<string, int> scores;
scores["Alice"] = 95;
scores["Bob"] = 87;
int aliceScore = scores["Alice"];
리스트
#include <list>
list<string> names;
names.push_back("Alice");
names.push_front("Bob");
names.pop_back();
셋
#include <set>
set<int> uniqueNumbers;
uniqueNumbers.insert(1);
uniqueNumbers.insert(2);
uniqueNumbers.insert(1); // 중복 무시