وکتور با نوع داده متفاوت - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

وکتور با نوع داده متفاوت

0 امتیاز
سلام.

آیا میشه وکتور را به گونه ای تعریف کرد که به جای یک نوع داده چندین نوع داده را بتوان تو عناصرش نگهداری کرد؟
سوال شده خرداد 2, 1398  بوسیله ی ابید (امتیاز 781)   19 89 106

1 پاسخ

+1 امتیاز
 
بهترین پاسخ

از std::variant استفاده کنید.به صورت زیر:

#include <iomanip>
#include <iostream>
#include <string>
#include <type_traits>
#include <variant>
#include <vector>
 

using var_t = std::variant<int, long, double, std::string>;
 

 
int main() {
    std::vector<var_t> vec = {10, 15l, 1.5, "hello"};
    for(auto& v: vec) {
 
        
        std::visit([](auto&& arg){std::cout << arg<<std::endl;}, v);
        
 
  
     }
}

 

پاسخ داده شده خرداد 15, 1398 بوسیله ی Alias (امتیاز 302)   3 23 31
انتخاب شد خرداد 19, 1398 بوسیله ی ابید
...