Czy ktoś może dać mi znać najlepszy sposób, aby to osiągnąć.Sprawdź int lub listę <int>
Powiedz, mam funkcja szablon jak
template<typename ARGUMENT>
void get_result(ARGUMENT &ag)
{
// arg can be a single object of a particular object or list of objects of that particular class.
//rest
}
Czy istnieje sposób, że mogę sprawdzić czy & ag jest pojedynczy obiekt lub listę obiektów. Również z danym interfejsem szablonu.
Nie ma znaczenia, czy odpowiedź wynika ze specyfikacji szablonu w jakiś sposób przez interfejs klasy. Jedyną rzeczą jest, że nie chcę określać typu obiektu ani typu listy.
Przykł. ag = int lub ag = lista
CB
Czy specfically oznaczać listy lub dowolny stary pojemnik? – doctorlove
Właściwie każdy pojemnik. Byłoby również dobrze, gdybym mógł odpowiednio wybrać typ zwrotu. Jeśli jeden obiekt zwraca pojedynczy obiekt, a argument jest typem powrotu kontenera kontenera. Z drugiej strony wewnątrz funkcji jest to ta sama rutyna dla obiektów innych niż iteracyjne, gdy jest to kontener. Byłoby lepiej, gdybym mógł mieć najkrótszy kod. –
Konceptualnie, argumentacja do twojej funkcji jest kontenerem, a nie jest. Jeśli chcesz połączyć te dwie funkcje, brzmi to jak zły projekt. Czy masz zamiar traktować przekazanie pojedynczego elementu, tak samo jak kontener o rozmiarze 1? –