LOKI TYPELIST的簡單與複雜

2021-04-13 07:27:49 字數 644 閱讀 7351

提到這個,有必要帶一下typelist的基石:

template    

<

class

t,class

u>

struct

typelist

typedef    typelist

<

int,typelist

<

double

,float

>

>

numlist; 

這個遞迴工作交給了編譯器,你可以構造無限長的list(你要付出編譯時間的,但是卻沒允許時間),但是如果構建長度為10的list,你得typedef將變得讓你我難以容忍,你可以依次套用,但是關鍵是這個東西太常用了,有必要「給大多數人帶來方便」,這要這麼做呢。

1.尋找一種通用的**方法,把這個東西一次性解決掉,可以無限推演。

2.使用巨集,定義常用的一些情況。

loki使用了後者,在我的認知範圍內,我認為第1點太難做到了,因為這些東西本身就在編譯階段處理。這給我很大的啟示,我一直努力追求**的優雅和安全,所以我有時候排斥巨集,直到第一次看到loki的這塊處理,我覺得,它不失優雅,而且你沒有比這個更好的辦法,我也感覺到使用巨集的巨大空間,你一樣可以對巨集進行安全檢查的,譬如使用template技術,do like it。

簡單的設計不簡單

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

簡單的設計不簡單

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

簡單的設計不簡單

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