GO언어 포인터, new함수
·
Backend/Golang
GO언어에는 포인터가 있지만 포인터 연산은 불가능 합니다. 선언 방법var 변수명 *자료명위에 사진처럼 'hello' 라는 포인터를 선언하고 'fmt.Println' 으로 출력을 하면 값은 'nil' 이 나옵니다.※여기서 'nil' 이란? NULL값을 의미합니다. 하지만 GO언어에서 'nil'은 숫자 0이 아닙니다. 따라서 밑에 사진처럼 hello 포인터에 아무 값도 넣지 않고, 0과 같다하면 오류가 뜨게됩니다. 이를 해결하기위해 new 함수로 메모리를 할당해야 합니다. 여기서 나오는 값은 메모리 주소입니다. 이 주소는 실행할 때마다 바뀝니다. 여기에 값을 대입하면 그 값이 나옵니다.