boost variant的簡單介紹

2021-07-27 19:01:21 字數 820 閱讀 1844

boost::variant簡介

boost::variant 是定義在boost/variant.hpp中的模板類,它的功能類似與union。variant是乙個模板,所以在使用時必須傳入至少乙個型別引數。variant例項所儲存的資料型別只能是傳入型別中的一種。

例如:

boost::variant variant;

variant = "hello world!";

variant = 3.14;

variant = 356;

#include 

#include

#include

using namespace std;

struct var: public boost::static_visitor<>

void

operator()(const

int &t)

void

operator()(const

string &t)

};int main(int argc, char* argv)

執行結果:

the type is

int, the value

is: 356

the type is

double, the value

is: 3.14

the type is

string, the value

is: hello world

簡單的設計不簡單

最近看了 簡約至上 這本書,這本文章總結一下。推薦給對互動設計感興趣的童鞋。話說簡單 首先人們喜歡簡單 值得信賴 適應性強的產品。所以我們才會費盡心力去設計簡單的產品。人們喜歡簡單的產品原因有 1 產品的功能越多,就越難發現真正對使用者有價值的新功能。2 因為增加的複雜性導致他們很難找到自己真正需要...

簡單的設計不簡單

最近看了 簡約至上 這本書,這本文章總結一下。推薦給對互動設計感興趣的童鞋。話說簡單 首先人們喜歡簡單 值得信賴 適應性強的產品。所以我們才會費盡心力去設計簡單的產品。人們喜歡簡單的產品原因有 1 產品的功能越多,就越難發現真正對使用者有價值的新功能。2 因為增加的複雜性導致他們很難找到自己真正需要...

簡單的設計不簡單

最近看了 簡約至上 這本書,這本文章總結一下。推薦給對互動設計感興趣的童鞋。話說簡單 首先人們喜歡簡單 值得信賴 適應性強的產品。所以我們才會費盡心力去設計簡單的產品。人們喜歡簡單的產品原因有 1 產品的功能越多,就越難發現真正對使用者有價值的新功能。2 因為增加的複雜性導致他們很難找到自己真正需要...