본문 바로가기
반응형

lambda4

Golang 함수, 익명함수 사용법. Golang의 함수, 익명함수 사용법입니다. Golang은 Lambda라는 표현을 사용하지 않습니다. 뭐.... 익명함수나 Lambda나 결국 같은 놈이니깐요..... 1. 함수 package main import ( "fmt" ) func add(a int, b int) int { return a + b } func main() { var a int = 10 var b int = 20 fmt.Println(add(a, b))//output : 30 } 이런식으로 함수를 정의할 수 있습니다. Golang의 함수는 이런식으로 구성되어 있습니다. 별거 없죠..... 하지만 Golang의 특징중 하나는 return 값을 여러게 줄 수 있다는 것입니다. 2. 함수 리턴 여러개 package main import.. 2021. 5. 16.
C++ for_each문 개념과 사용법 설명 C++에는 기본 문법인 for문이 있습니다. for문으로 모든 반복문을 만들 수 있고 실행시킬 수 있습니다. 하지만 단순 for문으로 만들기엔 귀찮거나 손이 많이가는 반복문을 만들 수 밖에 없는 상황이 종종 존재합니다. 한가지 예시를 들겠습니다. #include #include #include using namespace std; void print_fnc(int n) { cout 2019. 8. 1.
C++ inline 함수란? inline 함수는 C++의 실행 속도 개선을 위해 등장 했습니다. C++에서는 기본적으로 클래스 선언을 통한 맴버함수가 많이 이용되는데, 이러한 경우 보통 간단한 기능을 하는 함수들이 많이 만들어지게 됩니다. 생성자, getter(), setter(), print() 등 과같은 간단한 함수들 말이죠. 함수들이 간결하여 실행속도에 영향을 끼지지 않을 것 같지만 함수 호출 과정에서 프로그램 속도가 떨어지게 됩니다. 함수의 호출은 다음과 같이 진행됩니다. ※찾아보니 중간에 레지스터에도 값이 저장되는데 어떤 값이 무슨 이유로 저장되는지는 저도 잘 몰라서 일단 제외했습니다. 코드로 보면 다음과 같습니다. #include int fnc_1(int a, int b){ //매개변수 스택에 저장 return a + b.. 2019. 7. 13.
C++ Lambda 사용 이유와 사용 방법 C++에는 lambda라는 문법이 존제합니다. 원래 이 lambda는 boost라는 라이브러리에서 제공하는 함수였지만 지금은 modern c++로 넘어가면서 이 기능을 기본적으로 지원하게 되었습니다. (현재 modern c++은 C++ 20 까지 나왔습니다.) 출처 : https://modoocode.com/196 ● [] 캡쳐 블록 (사용시 외부 변수를 캡쳐해 람다 몸통에서 사용 가능) ● () 전달 인자 ● -> 반환 타입 ● {} 함수 몸통 (※Lambda는 기본적으로 캡쳐 블록'[]', 전달인자 '()', return type을 생략할 수 있습니다.) 참...... 어려워 보이고 이런 기능이 왜 있는지 감이 안잡히고... 고통 스럽습니다..... 우선!! 이 lambda 라는 문법이 왜 필요한지 .. 2019. 7. 1.
반응형

스킨편집 -> html 편집에서