개발!(2)
-
내가 개발을 하면서 겪은 멍청한 실수들 (1)
1. go언어에서 range문으로 배열의 값을 가지고 올 수 있다. 이 값 변수는 재사용된다. 코드 몇 줄 줄여보려다가 큰일날뻔 했다. m := map[string]*string{} arr := []string{"a", "b", "c"} for i, v := range arr { m[v] = &v // X (v 변수는 재사용된다. 따라서 모든 map 값에 같은 주소가 들어간다. m[v] = &arr[i] // O } 2. go에서 map은 여러 고루틴에서 접근할 경우 항상 lock을 걸어야 한다. 따라서 편하게 사용하려고 따로 struct를 만들어서 사용했다. // 문제가 된 코드 type Map[K comparable, V any] struct { sync.RWMutex m map[K]V } func ..
2024.02.27 -
ScriptConverter 제작
컬러 스크립터가 너무 오류가 많이 떠서 간단히 하나 만들어 보았다. #include int main() { printf("hello world"); } TEST #include int main() { printf("d"); } TEST
2019.03.31