특정 경우에 인스턴스화 (정의)가 가능합니까?"T var();"입니다. 항상 C++의 함수 선언?
3
A
답변
3
항상 매개 변수 선언으로 표시되는 경우를 제외하고 C++ (및 C)의 함수 선언입니다.이 경우 함수 포인터가 선언됩니다.
역 비록 언급 할 수 없습니다
인가 "T var에;" 항상 C++의 객체 선언?
T
가var
가 그것을 이와 같이, 파라미터 선언으로 표시하는 경우를 제외하고, 함수로서 선언 될 경우, 함수 타입이 될 수 있기 때문에
아니는 아니다.
0
“T var();”
은 항상 C++의 함수 선언입니까?
컨텍스트에 따라 다릅니다.
컨텍스트 1
template<typename T>
void func()
{
T var(); // function declaration
}
컨텍스트 2 func
복귀 공극 함수에 대한 포인터를 리턴 T
인수로 얻어 이때
template<typename T>
void func(T var()) // equivalent to `template<typename T> void func (T()) { } `
{
}
. var
을 생략하면 선택 사항입니다.
무엇
T var(1)
에 대한;, 인스턴스를 또는 그것을T var = T(1)
과 동일하다;
T var(1)
는 T var = T(1)
는 복사 초기화 인 반면 직접 초기화된다. 두 경우 모두 var
개체는 T (1
)로 초기화됩니다.
T
이 사용자 정의 유형 인 경우 후자의 경우에는 액세스 가능 복사 생성자가 필요하지만 전자는 복사하지 않습니다.
관련 문제
- 1. Objective-C의 함수 구문
- 2. 함수 프로토 타입 선언
- 3. 클래스의 전방 선언, 함수
- 4. C++ 템플릿과 외부 함수 선언
- 5. Django : request.META [ 'REMOTE_ADDR']은 항상 '127.0.0.1'입니다.
- 6. T-SQL의 IndexOf 함수
- 7. Objective-C의 OR 함수
- 8. c의 scanf() 함수
- 9. c의 인라인 함수
- 10. Objective C의 함수 포인터
- 11. C의 일반 함수 포인터
- 12. JQuery와 VAR 값으로부터 함수 호출
- 13. 유효하지 않은 함수 선언. DevC++
- 14. C 함수 선언
- 15. jQuery 함수 선언
- 16. 일반 함수 선언
- 17. 루프 선언 내부의 함수?
- 18. 익명 함수 선언 jquery
- 19. php OOP 함수 선언
- 20. 함수 안에서 함수를 선언 하시겠습니까?
- 21. 목표 C의 클래스 선언 차이점은 무엇입니까?
- 22. C++ 전달 함수 선언, friend 함수 문제
- 23. 함수 이름 다음에 함수 매개 변수 선언
- 24. HashBytes() 함수 T-SQL
- 25. Objective-C의 비 멤버 함수
- 26. C++ : 함수 오버로드 및 선언 순서의 혼동
- 27. 함수 매개 변수 목록 내의 참조 선언
- 28. 여러 선언 오류 - 가상 함수
- 29. Bash에서 함수 내에서 선언 사용
- 30. PHP 파일에서 함수 선언 추출하기
'T var (1);'은 어떨까요? – lex
죄송합니다, 귀하의 업데이 트가 내 코멘트에 대한 답변을하지 못했습니까? – lex
@lex : 괄호가 비어 있지 않으면 분명히 무엇이 들어 있는지에 따라 다릅니다. '1'은 매개 변수 선언과 같지 않지만 T 생성자의 int 인수와 같습니다. –