본문 바로가기
반응형

전공공부/C++9

[C++] 5. 함수의 매개변수 전달(Call by Value, Pointer, Reference) 코딩을 하다보면 사용자 정의 함수를 정말 많이 사용하게 될 것 입니다. 그리고 객체지향 C++에서는 클래스를 정의를 많이하게 되는데 멤버변수와 멤버함수를 사용하기에 모든 함수의 매개변수가 정말 중요합니다. 아래 변수의 값을 변경하는 예시를 봐주세요 그리고 꼭 실행해보세요!!! 아래 예시 코드를 보면서 차이점을 말씀드리겠습니다 Call by Value: 함수에 값을 전달 - 값만 전달하여 함수에서만 변동되고 main 함수에서는 값이 변동이 안됨 Call by Pointer: 함수에 주소값 전달 - 주소값를 전달하여 main 함수에서도 변동이 됨 Call by Reference: 함수에 주소값 전달 - 주소값를 전달하여 main 함수에서도 변동이 됨 그럼 Call by Pointer와 Call by Refe.. 2024. 3. 13.
[C++] 4. 동적할당(동적 메모리 사용) C언어의 동적 메모리 사용과 동일하게 프로그램 시행 중 필요한만큼만 메모리를 사용합니다. C언어의 동적할당 함수(malloc, free)와 이름은 다르지만 같은 방식으로 연산자를 사용합니다. new: 필요한 만큼 메모리 할당 delete: 사용한 메모리 반납 동적할당 프로세스: 할당 → 사용 → 반납 메모리를 반납하지 않으면 메모리 누수가 발생할 수 있고, 동일한 메모리를 두 번 이상 해제하거나, 해제한 것을 참조하려 하면 에러가 발생할 수 있습니다. 2024.02.28 - [전공공부/C언어] - [C] 11. C언어 동적할당(동적메모리) [C] 11. C언어 동적할당(동적메모리) 동적할당은 말 그대로 프로그램 실행 중 메모리를 할당하는 것을 말합니다. 즉, 원하는 만큼 배열을 선언하거나 특정변수를 필요.. 2024. 3. 11.
[C++] 3. 함수 오버로딩(Function Overloading) C++에서는 하나의 함수명으로 다양하게 활용할 수 있습니다. 위 예시와 같이 Plus라는 함수 하나를 여러 가지 방식으로 정의하여 사용할 수 있습니다. Plusint2, Plusint3, Plusdouble과 같이 여러 가지 함수가 아닌 자료형 및 매개변수만 확인하고 그에 맞는 함수를 호출하여 사용합니다. 함수오버로딩을 사용하는 이유 1. 다른 자료형으로 동일한 기능의 함수명 통일 가능 2. 같은 동작의 함수의 각각 다른 매개변수를 가지로도록 정의 3. 비슷한 기능의 함수 이름을 통일시켜 가독성 향상 - 예시 - 2024. 3. 9.
[C++] 2. 배열, 포인터, 함수 배열과 포인터 함수는 모두 C언어와 동일하게 사용하면 되어서 별도 포스팅은 하지 않겠습니다. 차이점만 간단하게 설명하겠습니다. C언어에서는 배열의 크기로 상수변수를 사용할 수 없었지만 C++에서는 상수변수로 배열 크기를 입력할 수 있습니다. 함수의 매개변수에 기본 값을 지정할 수 있습니다. 선언부에만 작성하고 정의부에는 작성하지 않습니다. 그리고 중요한 것은 우측 파라미터부터 사용해야합니다!! 예시를 한 번 코딩해보세요!! 배열, 포인터, 함수설명은 기존 C언어를 참고해주세요!! 2024.01.10 - [전공공부/C언어] - [C] 7. C언어 사용자 정의 함수, 변수의 특성(지역, 전역, static) [C] 7. C언어 사용자 정의 함수, 변수의 특성(지역, 전역, static) 오늘은 C언어 사용자.. 2024. 3. 7.
반응형