«name-lookup» 태그된 질문


4
ADL이 함수 템플릿을 찾지 못하는 이유는 무엇입니까?
C ++ 사양의 어떤 부분이 관련 네임 스페이스 집합에서 함수 템플릿을 찾지 못하도록 인수 종속 조회를 제한합니까? 즉, main아래 의 마지막 호출 이 컴파일에 실패하는 이유는 무엇입니까? namespace ns { struct foo {}; template<int i> void frob(foo const&) {} void non_template(foo const&) {} } int main() { ns::foo f; non_template(f); …

2
이 템플릿 기능이 예상대로 작동하지 않는 이유는 무엇입니까?
템플릿 기능에 대해 읽고 있었고이 문제로 혼란스러워했습니다. #include <iostream> void f(int) { std::cout << "f(int)\n"; } template<typename T> void g(T val) { std::cout << typeid(val).name() << " "; f(val); } void f(double) { std::cout << "f(double)\n"; } template void g<double>(double); int main() { f(1.0); // f(double) f(1); // f(int) g(1.0); …

3
라인 외부 멤버 함수 정의에 필요한 정규화 된 클래스 이름이 전역 범위에 해당합니까?
이 질문은 클래스 외부 멤버 함수 정의에서 클래스 이름 (전역 범위 연산자 포함)을 정규화하는 것이 유용하고 필요한지 궁금합니다. 한편으로, 나는 이것을 전에 본 적이 없다. (그리고 올바르게 구문하는 것이 모호한 것처럼 보인다). 다른 한편으로, C ++ 이름 조회는 사소한 것이 아니기 때문에 코너 케이스가 존재할 수 있습니다. 질문: 에 의한 …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.