8
सी ++ में 11 एक समारोह के लिए दो भिन्न टेम्पलेट्स संभव है?एक समारोह के लिए दो विविध टेम्पलेट्स?
template <class... Types, class... Args>
void f(const std::tuple<Types...>& t, Args&&... args)
सी ++ में 11 एक समारोह के लिए दो भिन्न टेम्पलेट्स संभव है?एक समारोह के लिए दो विविध टेम्पलेट्स?
template <class... Types, class... Args>
void f(const std::tuple<Types...>& t, Args&&... args)
कि पूरी तरह से कानूनी है::
#include <tuple>
using namespace std;
template <class... Types, class... Args>
void f(const std::tuple<Types...>& t, Args&&... args)
{
// Whatever...
}
int main()
{
std::tuple<int, double, bool> t(42, 3.14, false);
f(t, "hello", true, 42, 1.0);
return 0;
}
धन्यवाद! मुझे नहीं पता था कि यह कानूनी था और मैंने सोचा कि इसे एक तरह का मेटाप्रोग्रामिंग हैक चाहिए। – Vincent
तुम्हारा मतलब 'टेम्पलेट
यदि नहीं, वहाँ एक चाल ऐसा ही कुछ लिखना है > शून्य एफ (ए 1 और& ... ए 1, ए 2 और& ... ए 2) '? – Yakk
मुझे आश्चर्य है कि क्या मैंने –
@Yakk को गलत समझा नहीं है: मुझे लगता है कि जो आप लिखते हैं वह कानूनी नहीं है (कंपाइलर का ए 1 और ए 2 के बीच कहीं "कट" करने का कोई मतलब नहीं है)। – Vincent