C++ 구조를 사용하여 고정밀 템플릿을 작성할 때 생성자 함수 관련 문제
三叔
三叔 2017-06-12 09:24:48
0
1
1104

구조 오버로드 연산자에 대한 혼란

으아악

에서

으아악

함수는 무엇인가요?
이 두 문장을 삭제해도 컴파일은 정상적으로 진행되지만

으아악

컴파일 오류가 발생하지만

으아악

정상적으로 컴파일 가능합니다.
구조 초기화는 안됩니다.
bign n(123);
초보자가 시도해 본 결과는 다르지 않습니다.
도움을 바랍니다

.
三叔
三叔

모든 응답(1)
伊谢尔伦

글 인용: http://www.cnblogs.com/chio/a… 할당은 기존 두 개체 사이에서 수행되는 반면 초기화는 새 개체를 생성하는 것이며 초기 값은 다른 기존 개체에서 가져옵니다. 컴파일러는 할당 중에 오버로드된 할당 연산자를 호출하고 초기화 중에 복사 생성자를 호출하는 두 가지 상황을 구분합니다. 클래스에 복사 생성자가 없으면 컴파일러는 기본 생성자를 제공합니다. 이 기본 복사 생성자는 클래스의 모든 멤버를 복사합니다.

으아악

복사 생성자는 다음과 같습니다.

으아악

물론 댓글을 달고 나면 오류가 생기겠죠

으아악

기본 생성자를 먼저 호출한 후 할당 연산자를 호출하므로 두 함수를 주석 처리한 후에는 아무런 문제가 없습니다.

직접 디버깅할 수 있습니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿