请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

请问6-6中为什么weekday打印出来的Tuesday,而是1呢?

请问6-6中为什么weekday打印出来的Tuesday,而是1呢?

正在回答 回答被采纳积分+3

1回答

quickzhao 2020-07-12 13:45:31

第一个值是0,第二个值是1。

0 回复 有任何疑惑可以回复我~
  • 提问者 慕仰5073186 #1
    老师 您好,我有些不理解 为什么不是"Tuesday",而是1呢?
    回复 有任何疑惑可以回复我~ 2020-07-12 23:00:34
  • quickzhao 回复 提问者 慕仰5073186 #2
    枚举类型背后对应的是整形值。
    回复 有任何疑惑可以回复我~ 2020-07-13 23:38:19
  • 易萧 回复 提问者 慕仰5073186 #3
    Tuesday相当于是一个常量名,C++并没有反射机制,所以翻译成汇编的时候你会看到,你根本找不到变量名相关的字符串,经过编译后并不会保存这样一个名字,所以程序不会认识这样一个变量,也更不会打印出Tuesday这样一个名字,你打印Tuesday,就如同打印一个const int a = 4一样,它不会打印出a。程序中所有的标识符,都是为了程序员更好地阅读和使用,如果你希望打印出Tuesday,那你或许应该自己自定义并加载一个单例的全局表,将其保存为字符串,并对所有使用它的场景进行你所希望的重载,比如Java中打印对象时,就会去调用toString,你可以写自己的逻辑。
    回复 有任何疑惑可以回复我~ 2022-08-09 13:06:19
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信