목록Programming (115)
Nagie's DevStory
C++에서의 클래스와 구조체의 차이점은 거의 없다고 봐도 무방하다. 디폴트 접근 지정자가 private이냐 public이냐의 큰 차이점만 있을 뿐 C++의 구조체 역시 클래스 처럼 사용할 수 있으며 생성자와 소멸자의 생성과 심지어 상속까지 가능하다. 그러면 왜 구조체를 사용하는지 의문이 들 수 있는데 클래스는 일반적으로 객체의 정의와 구현에 사용되고 구조체는 데이터 구조를 표현하는 데 사용된다. 또 구조체는 C 스타일의 레코드(Record) 타입으로 사용하기 위해 사용하기도 한다.
//클래스의 예시 class Circle { private: double radius; public: Circle(double r) : radius(r) {} double getArea() { return 3.14 * radius * radius; } }; int main() { Circle myCircle(5.0); double area = myCircle.getArea(); } 클래스(Class)란 객체 지향 프로그래밍(OOP)의 핵심 개념이다. 즉 C++만 가지고 있는 개념이 아니란 이야기며 이는 데이터와 데이터를 조작하는 함수를 함께 묶어둔 템플릿 또는 설계도로 생각하면 되겠다. 또한 클래스는 C의 구조체(struct)처럼 사용자 정의 데이터 유형을 만드는 방법중 하나이며 클래스 안에서 선언된 함..
//네임스페이스 사용 예시 #include // "my_namespace"라는 사용자 정의 네임스페이스를 정의 namespace my_namespace { int x = 10; // my_namespace 내에서 x라는 이름은 이 네임스페이스에 속합니다. void printX() { std::cout
//템플릿 함수의 사용 예시 #include // 템플릿 함수 정의 template //typename 또는 class 키워드가 사용가능 T add(T a, T b) { return a + b; } int main() { int sum1 = add(5, 3); // int형에 대한 템플릿 함수 호출 double sum2 = add(3.5, 2.7); // double형에 대한 템플릿 함수 호출 std::cout