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); // This is fine.
frob<0>(f); // This is not.
}