由於枚舉類型呢,是屬於一種標簽類型,所以在使用std::cout輸出的時候,會導致無法匹配數據類型而導致cout函數失敗。
這里給的建議呢就是在想要輸出的時候,將枚舉類型轉換為數據類型就可以啦。
如:
#include <iostream>
enum class day
{
a=1,
b,
c,
d
};
int main()
{
std::cout << static_cast<int>(day::c) << std::endl;
}
static_cast<int>(day::c)的意思呢就是將day::c轉換為int類型,這樣cout就能適配到數據類型輸出啦。
當然啦,也可以使用c函數printf()輸出,因為printf是控制符輸出,所以不存在不匹配的問題啦。
感謝您的查閱,若能幫到您是我莫大的榮幸!