일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Sync
- install
- API
- JavaScript
- mutex
- c++
- File
- go
- http
- Close
- windows
- Python
- Callback
- 리뷰
- package
- 영화
- window
- GO 언어
- 책
- bitcoin
- go언어
- json
- write
- range
- C
- tcp
- FOR
- channel
- Linux
- Golang
- Today
- Total
목록함수 (2)
Code Habit
콜백함수는 자신의 정보가 갱신되거나 이벤트가 발생했을 때 자신을 호출하는 객체에게 알려주는 역할을 한다. 일을 맡기고 다 되었는지 수시로 확인하는 것보다 일을 하는 쪽에서 일이 완료되면 통보해주는 것이 효율적이다. 예를 들자면 우리가 밥을 지을 때 밥을 안치고 수시로 밥솥을 열어보며 밥이 다 되었는지 확인하는 것보다 밥이 완료되면 밥솥이 밥이 완료되었음을 알리는 것이 효율적이다. 이러한 개념이 적용된 것이 콜백함수라고 할 수 있다. 예제이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 #include typedef void(*pfCallback)(); // 콜백함수 ..
Go 언어는 다음과 같이 간단하게 함수를 정의하고 호출할 수 있다. func 함수명(){} func hello() { fmt.Println("Hello, world!") } func world() { // 컴파일 에러 fmt.Println("world !"); } func main() { hello() } Go 언어는 함수 정의를 시작한 줄에서 { (여는 중괄호)가 시작된다. 다음 줄에 작성하면 컴파일 에러가 발생한다. ※ Go언어는 함수를 정의할 때 C, C++과 다르게 위치 제약이 없다. 즉 뒤에 정의해도 앞에서 사용할 수 있다. 함수에서 매개변수를 받고 값을 리턴하는 방법을 알아보겠다. func 함수명(매개변수명 자료형) 리턴값 자료형 {} func sum(a int, b int) int { ret..