콘스트(const)

변수를 상수화 하기 위해 사용된다. 쓰이는 위치에 따라서 용도가 달라진다.

* 앞 뒤로 구별하면 된다.

const * 상수 데이터

#include "pch.h"
#include <iostream>

int main()
{
	int TempValue = 10;
	int TempValue2 = 20;

	const int* TempPoint1 = &TempValue;
	int const* TempPoint2 = &TempValue;

	TempPoint1 = &TempValue2;
	*TempPoint1 = 30;

	TempPoint2 = &TempValue2;
	*TempPoint2 = 30;
}

포인터주소의 값이 불변이 된다.

  수정
포인터 변수 가능
포인터 주소의 값 불가능

주소의 값을 변경하려면 에러가 뜬다.
*앞에 const가 위치하면 되기에
const int *
int const * 
같다.

* const 상수 포인터

#include "pch.h"
#include <iostream>

int main()
{
	int TempValue = 10;
	int TempValue2 = 20;

	int* const TempPoint1 = &TempValue;

	TempPoint1 = &TempValue2;
	*TempPoint1 = 30;
}

포인터 변수가 불변이 된다.

  수정
포인터 변수 불가능
포인터 주소의 값 가능

포인터 변수를 변경하려고 하면 에러가 발생한다.

 

const * const 

포인터 변수, 포인터 주소의 값 둘다 불변이 된다.

#include "pch.h"
#include <iostream>

int main()
{
	int TempValue = 10;
	int TempValue2 = 20;

	const int* const TempPoint1 = &TempValue;

	TempPoint1 = &TempValue2;
	*TempPoint1 = 30;
}

포인터 변수, 포인터 주소의 값 둘다 변경하려고하면 에러가 발생한다.

  수정
포인터 변수 불가능
포인터 주소의 값 불가능

+ Recent posts