2016-07-11 5 views

답변

0

From here :

이 생성자는 클래스 타입 (구조체, 클래스 또는 조합) 제공됩니다에는 사용자 정의 이동 없으며, 다음과 같은 모든 경우에만 컴파일러는 자동으로 기본 이동 생성자를 만듭니다 true :

  • 사용자가 선언 한 복사본 생성자가 없습니다.
  • 사용자 선언 복사 할당 연산자가 없습니다.
  • 사용자가 지정한 이동 지정 연산자가 없습니다.
  • 사용자가 선언 한 소멸자가 없습니다.
  • 암시 적으로 선언 이동 생성자 인해 다음 섹션에 설명 된 조건에 삭제 된 Dlib는 용기 (array2d에 명시 적으로 정의 된 이동 생성자을 많이 가지고 왜

그게 전부가 정의되지 않은, DNN 모듈 ...)

1

단순한 복사 방지보다 표현 템플릿 기술에 더 많은 것이 있습니다. 예를 들어, 컴파일러는 전체 표현식을보다 효율적인 실행 코드로 변환하기 위해 기호 선형 대수를 수행 할 수 있습니다. 이러한 변환 중 많은 부분이 사본을 피하는 것과 아무런 관련이 없습니다.