Updated Boost datetime Examples Translated (markdown)

Howard Hinnant
2017-07-07 20:24:25 -04:00
parent 22edb7e88a
commit 55c99382eb

@@ -291,30 +291,27 @@ main()
``` ```
<a name="Print_Month"></a> <a name="Print_Month"></a>
### Print Month ### Print Month
```c++
#include "date.h" #include "date.h"
#include <iostream> #include <iostream>
int int
main() main()
{ {
std::cout << "Enter Year: "; using namespace date;
int yi, mi;
std::cin >> yi;
std::cout << "Enter Month(1..12): ";
std::cin >> mi;
try try
{ {
using namespace date; std::cin.exceptions(std::ios::failbit);
auto ym = year(yi)/mi; std::cout << "Enter Year: ";
if (!ym.ok()) year y;
throw std::runtime_error("Bad year or month: " std::cin >> parse("%Y", y);
+ std::to_string(yi) + "/" + std::to_string(mi)); std::cout << "Enter Month(1..12): ";
auto wd = weekday{ym/1}; month m;
std::cin >> parse(" %m", m);
auto ym = y/m;
auto endOfMonth = (ym/last).day(); auto endOfMonth = (ym/last).day();
for (auto d = 1_d; d <= endOfMonth; d += days{1}, wd += days{1}) for (auto d = 1_d; d <= endOfMonth; d += days{1})
std::cout << ym.year() << '-' << ym.month() << '-' std::cout << format("%F [%a]\n", ym/d);
<< d << " [" << wd << "]\n";
} }
catch (const std::exception& e) catch (const std::exception& e)
{ {
@@ -322,7 +319,7 @@ main()
<< " Details: " << e.what() << '\n'; << " Details: " << e.what() << '\n';
} }
} }
```
<a name="Month_Adding"></a> <a name="Month_Adding"></a>
### Month Adding ### Month Adding