2013/5/4 Rob Stewart
On May 3, 2013, at 6:06 AM, "Vicente J. Botet Escriba" < vicente.botet@wanadoo.fr> wrote:
Le 03/05/13 12:01, Vicente J. Botet Escriba a écrit :
Everyone agree with the constant object for month.
date dt(year(2013), may, day(3));
But having to use day(3) or year(2013) seems to wordy.
I was wondering if we can not add some literals for day, year and week
so that we can just write
date dt(2013y, may, 3d);
The advantage I see in addition to been less wordy, is that we will
have a compile error when the year, day or week is out of range. Oh I forget the drawbacks. As any other suffix it would need to add a using statement
using boost::chrono::dates::literals;
That alone negates the wordiness argument. Few will type "day()" enough times, in a file, to offset that using directive.
date dt(2013y, may, 3d);
The number first order, and need for an underscore, is ugly to me. I'd prefer constants of the form dayN to this.
Unfortunately '_' is required by the standard for a user-defined literal.