Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6344397
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 24, 20262026-05-24T20:37:46+00:00 2026-05-24T20:37:46+00:00

I am trying to write a function which can take any of the standard

  • 0

I am trying to write a function which can take any of the standard containers(list, stack, vector etc) as it’s arguments. I also wish to know the type that is within the container. Here is what I have tried.

#include<iostream>
#include<list>
#include<vector>

template<class data_type, template<class> class container_type>
void type(container_type<data_type>& _container){
        std::cout<<typeid(container_type).name()<<std::endl;
}


int main(){

    std::list<int> list_t;
    std::vector<int> vector_t;
    type(list_t);
    type(vector_t);
}

The type of container_type once inside this function is always _Container_base_aux_alloc_empty which(I think) is a base class of the standard containers.

What is going on here?

How would I make this function return the correct type?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-24T20:37:47+00:00Added an answer on May 24, 2026 at 8:37 pm

    Your code won’t work, because as soon as someone swaps out the allocator or something like that, then you’re done for. You should take any T and use ::value_type, if in C++03, or type deduction in C++0x.

    Also, .name() isn’t defined to return anything useful, at all. In any situation. An implementation could return “har har sucker! good luck using this language feature” for every type and be conforming.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I'm trying to write a function in a CodeIgniter controller which can take optional
hello everyone I'm trying to write function which can unfold int in the list
I'm trying to write a bash function which will take all the arguments sent
I am trying to write a function drag which can be called as drag('Object1').to('Object2')
Hopefully someone can help out here; I am trying to write a function which
So I am attempting to write a compare function in C which can take
BACKGROUND I'm trying to write a function query query('type', 'parameters', 'bind_types') which I can
I am trying to write a function which can tell me whether there is
I am trying to write a function to get a list of offers (their
I am trying to write a function that will take an xml object, an

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.