百科问答小站 logo
百科问答小站 font logo



Qt QTime的toString是如何实现的? 第1页

  

user avatar   he-dao-38 网友的相关建议: 
      

最终调用函数是这个QString QLocalePrivate::dateTimeToString(const QString &format, const QDateTime &datetime, const QDate &dateOnly, const QTime &timeOnly, const QLocale *q) const,在qlocale.cpp里面。关键部分:

       switch (c.unicode()) {     case 'h': {         used = true;         repeat = qMin(repeat, 2);         int hour = time.hour();         if (timeFormatContainsAP(format)) {             if (hour > 12)                 hour -= 12;             else if (hour == 0)                 hour = 12;         }         switch (repeat) {         case 1:             result.append(m_data->longLongToString(hour));             break;         case 2:             result.append(m_data->longLongToString(hour, -1, 10, 2, QLocaleData::ZeroPadded));             break;         }         break;     }     case 'H':         used = true;         repeat = qMin(repeat, 2);         switch (repeat) {         case 1:             result.append(m_data->longLongToString(time.hour()));             break;         case 2:             result.append(m_data->longLongToString(time.hour(), -1, 10, 2, QLocaleData::ZeroPadded));             break;         }     break;      case 'm':         used = true;         repeat = qMin(repeat, 2);         switch (repeat) {         case 1:             result.append(m_data->longLongToString(time.minute()));             break;         case 2:             result.append(m_data->longLongToString(time.minute(), -1, 10, 2, QLocaleData::ZeroPadded));             break;         }         break;     case 's':         used = true;         repeat = qMin(repeat, 2);         switch (repeat) {         case 1:             result.append(m_data->longLongToString(time.second()));             break;         case 2:             result.append(m_data->longLongToString(time.second(), -1, 10, 2, QLocaleData::ZeroPadded));             break;         }     break;     //.... }     



  

相关话题

  各位大佬都是怎么样学习C++的?能分享一下您的学习过程吗? 
  C++在面向对象编程中,非虚继承和非虚析构函数的存在是为了解决什么问题? 能否都用虚继承和虚析构函数? 
  如何评价Qt Lite Project? 
  为什么游戏引擎大多选择使用 C++ 而不是 C 开发? 
  大公司为什么无法轻松使用更新的c++版本? 
  如何理解《Effective C++》第31条将文件间的编译依赖关系降低的方法? 
  c++中 为什么数组不能被vector完全替代? 
  C++的move构造是否是设计失败的? 
  C++ 允许「我们都是人,所以我可以把你私有的眼睛借来随便玩,再还给你」,这难道是一种设计上的妥协? 
  C++ 允许「我们都是人,所以我可以把你私有的眼睛借来随便玩,再还给你」,这难道是一种设计上的妥协? 

前一个讨论
今天就是年二九了,为什么我一点年味也没感受到?
下一个讨论
如何在春节时礼貌拒绝亲戚一些不想回答的问题?





© 2025-05-31 - tinynew.org. All Rights Reserved.
© 2025-05-31 - tinynew.org. 保留所有权利