c++可以實現條件聲明么?
03-10
經常碰到一種情況是需要判斷條件聲明變數的情況,比如說,如果滿足一個條件,這個變數是int類型,如果不滿足這個條件,這個變數是float類型。從c++語法上可以試想這個東西么?
可以.從C++11開始可以直接使用標準庫這樣做了.
#include &
#include &
#include &
int main()
{
typedef std::conditional&
typedef std::conditional&
typedef std::conditional&
std::cout &<&< typeid(Type1).name() &<&< ; std::cout &<&< typeid(Type2).name() &<&< ; std::cout &<&< typeid(Type3).name() &<&< ; }
std::conditional - cppreference.com
編譯期的就用conditional ,運行期的就用union +index ,如果要求類型安全的就用varient ,或者自己造一個。
推薦閱讀:
※github 上有哪些遊戲或者遊戲開發相關的炫酷的user或者repo?
※c語言向文件寫入名字和成績組成的結構體為什麼只有成績出現了燙?
※如何高效的學習C++?
※對於 C/C++ 函數指針的困惑?
TAG:CC |