假設一uint16_t我創建了一個模板參數等於多少uint8_t
就是我要串起來成一個大INT類。是治療2個uint8_ts爲低效率
這樣我可以創建這樣一個巨大的INT:
SizedInt<1000> unspeakablyLargeNumber; //A 1000 byte number
現在的問題是:我在使用uint8_t
!而非使用內置型較大殺死了我的速度。
例如:
SizedInt<2> num1;
uint16_t num2;
是num1
和num2
相同的速度,或者是num2
快?
我期望'num2'更快,因爲它的操作可以在單個指令中完成,而'num1'將在其uint8_t'成員上至少需要兩次操作。 – Cornstalks
如果你使用至少16位處理器,最有可能'num2'將會更快,因爲對於許多操作,將使用單CPU指令而不是(更復雜的)SizedInt方法。但即使使用8位處理器,我也懷疑這些方法會超越編譯器構建的代碼。 – mvidelgauz