본문 바로가기
반응형

Study/Go21

[Go] Slice와 Array 알고 쓰기 Slice C++의 Vector, Java의 ArrayList 등과 같이 사용할 수 있는 Go의 Slice. 코딩 테스트든 개발이든 가장 많이 사용하게 될 자료구조가 아닌 듯싶다. 그렇기에 Slice를 잘 사용하기 위해 기본적으로 알아야 하는 내용들의 이해를 돕기 위해 Array와 비교하여 요약하려 한다. Array와 Slice의 차이 기본적으로 Array는 memory에 동적으로 할당할 수 없다(정적인 자료구조). 생성 시에 크기를 지정해 주어야 하며 그에 맞춰 const 한 메모리를 할당하게 된다. 하지만 Slice는 그렇지 않다. Slice는 동적으로 할당할 수 있으며 크기를 따로 지정해 주지 않아도 된다(해도 됨). Array와 Slice 생성 방법 Array 몇 가지의 방법을 소개하겠다. 사실 .. 2021. 7. 21.
[Go] GC(Garbage Collector) GC(Garbage Collector) Memory Garbage를 제거하는 역할 사용하지 않는 Memory를 차지하는 것들을 삭제 작동방식 쓸모없어지면 쓰레기로 판단 reference count == 0일 때. func add(){ var a int a = 20 }// 이 밖으로 나간다면 a변수의 reference count는 0이 됨 -> 쓸모가 없어짐 주솟값들이 서로를 가리켜 순환 형태를 이루는 외딴섬 형태를 이룰 때. a = b; b = c; c = a; 단점 느림. 버그 안만들면 됨.(C&&C++ 변태들 발언). GC가 잡지 못하는 leak이 있긴 함(개발자의 실수). 사용하지 않는 배열의 memory. 장점 귀찮은 일은 GC에게 맡겨 개발자의 생산성 향상. GC가 활동을 짧게 짧게 하여 개발자.. 2021. 7. 18.
[Go] C++ 과 Go 포인터의 차이 C++ #include using namespace std; class Student { public: int _age; Student() {}; Student(int age) : _age(age) {} }; int main() { Student s = Student(21); Student* p = &s; cout 2021. 7. 17.
반응형