728x90

객체지향 2

20.C++ 템플릿과 함수 오버로딩의 차이

1. 정의템플릿: 템플릿은 함수나 클래스를 정의할 때 데이터 타입을 일반화하여 여러 타입에 대해 동일한 로직을 적용할 수 있게 해줍니다. 템플릿은 컴파일 시간에 인스턴스화되어 특정 타입에 맞는 코드로 변환됩니다.함수 오버로딩: 함수 오버로딩은 같은 이름의 함수를 여러 개 정의하되, 매개변수의 타입이나 개수를 다르게 하여 서로 다른 기능을 수행할 수 있게 합니다. 즉, 함수의 이름은 같지만 매개변수의 목록이 다릅니다. 템플릿 예제:template T add(T a, T b) { return a + b;}함수 오버로딩 예제:int add(int a, int b) { return a + b;}double add(double a, double b) { return a + b;}3. 타입 결정 시..

반도체/C++ 2024.07.31

19. C++의 객체지향 4가지

C++의 객체 지향 프로그래밍(Object-Oriented Programming, OOP)은 소프트웨어 개발에서 객체를 중심으로 설계하는 프로그래밍 패러다임. C++는 OOP의 4가지 주요 개념인 캡슐화, 상속, 다형성, 추상화를 지원  1. 캡슐화 (Encapsulation)설명: 객체의 상태(데이터)와 동작(메서드)을 하나의 단위로 묶어 외부로부터 보호하는 것입니다. 이를 통해 데이터에 대한 직접적인 접근을 제한하고, 객체의 내부 구현을 숨길 수 있습니다.예제:class Account {private: double balance; // private 멤버 변수public: // 생성자 Account(double initialBalance) : balance(initialBalance)..

반도체/C++ 2024.07.31
728x90