top of page
  • thebaleuncoding

C++에 추가된 연산자는 뭘까?

일산코딩학원 더바른코딩학원입니다.

구조체는 C언어에서 자료를 체계적으로 관리하기 위해 제공하는 문법입니다.

서로 다른 타입의 한 묶음을 의미하며,

관련 정보를 하나의 의미로 묶을 때 사용합니다.

C++에서는 구조체에 함수를 추가할 수 있습니다.

따라서 구조체가 데이터와 함수가 결합된 class와 유사한 개념이 되었습니다.

선언할 때 예약어인 struct를 생략할 수 있습니다.

추가된 연산자로는 범위 연산자, new와 delete가 있습니다.

범위 연산자 (scope operator) '::'

::전역변수명

전역변수와 지역변수의 이름이 같을 때,

전역변수가 지역변수에 의해 가려져 일반적으로 지역변수가 우선시됩니다.

a만 쓸 경우 지역변수가 선택되어 2가 사용됩니다.

::a를 쓸 경우 전역변수가 선택되어 1이 사용됩니다.


#include <stdio.h>


int a =1;// 전역변수


int main()

{

int a =2;// 지역변수


a++;// 지역변수명과 전역변수명이 같을 시 지역변수 우선

::a++;// 연산자를 사용해 전역변수를 사용


printf("지역변수 : %d\n", a);

printf("전역변수 : %d",::a);


return0;

}


::외부함수 (전역함수)

C언어는 main함수 아니면 내가 정의한 사용자 함수가 기본이었습니다.

그런데 클래스나 구조체에서 함수를 정의할 수 있게 되어서

함수에게 소속의 의미가 생겼습니다.

일반적으로 main함수 밖에 정의된 함수를 전역함수,

클래스 안에서 정의된 함수를 멤버함수라고 합니다.

C언어에서는 이 전역함수와 멤버함수들의 이름이 중복될 수 없었습니다.

그런데 C++에서는 전역함수명과 멤버함수명이 같아도 됩니다.

함수명이 같아도 함수들의 소속이 다르기 때문입니다.




#CPP추가된연산자 #범위연산자

#CPP에추가된연산자는뭘까?에 대해 더 알아보고 싶나요?

아래 링크로 이동하세요.

더 많은 내용 보기

조회수 5회댓글 0개

최근 게시물

전체 보기
bottom of page