Anúncio

C++ 20 Lambdas in unevaluated contexts

19 de Jan de 2023
Anúncio

Mais conteúdo relacionado

Último(20)

Anúncio

C++ 20 Lambdas in unevaluated contexts

  1. Lambdas in unevaluated contexts
  2. unevaluated contexts(미평가 문맥) 어떤 함수를 평가(실행 혹은 호출) 없이 사용할 수 있는 문맥
  3. Lambdas in unevaluated contexts (C++ 20 이전)
  4. Lambdas in unevaluated contexts (C++ 20 이후)
  5. 람다 표현식은 평가되지 않은 표현식, 템플릿 인수, 별칭 선언, typedef 선언 및 함수 본문과 함수의 기본 인수를 제외한 함수(또는 함수 템플릿) 선언에서 사용할 수 없습니다.
  6. 템플릿 미평가 문맥에서도 캡쳐 C++ 20 부터 가능
  7. name mangling name mangling? C++ 에서는 오버로딩을 지원하기 때문에 컴파일러는 함수 인자에 따라 내부에서 구분이 가능한 다른 이름으로 만들어 주는 것. 컴파일러마다 만들어내는 이름은 조금씩 다르다. 기존에는 람다 클로저(객체) 별로 다른 타입을 가지고 있었지만 기존 방식으로는 미평가 문맥에 대응을 할 수 없기 때문에 맹글링 규칙이 변경되었다 https://stackoverflow.com/questions/55722362/lambdas-in-unevaluated-contexts-until-c20
  8. Lambdas in unevaluated contexts (C++ 20 이전)
  9. Lambdas in unevaluated contexts (C++ 20 이후)
Anúncio