Can't create time_duration with milliseconds on VS.NET 2003

I am using VS.NET 2003 and attempting to create a time_duration using hours, minutes, seconds, and milliseconds. However, I get an error message regarding the 4th parameter (milliseconds). Here is my code and the error message:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> // main.cpp
#include "boost/date_time/posix_time/posix_time.hpp" using namespace boost::posix_time; void main() { time_duration t(8, 45, 00, milliseconds(100)); }
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
------ Build started: Project: boost, Configuration: Debug Win32 ------ Compiling... main.cpp c:\Documents and Settings\sean.rohead\My Documents\Visual Studio Projects\boost\main.cpp(13) : error C2664: 'boost::posix_time::time_duration::time_duration(boost::posix_time::time_duration::hour_type,boost::posix_time::time_duration::min_type,boost::posix_time::time_duration::sec_type,boost::posix_time::time_duration::fractional_seconds_type)' : cannot convert parameter 4 from 'boost::date_time::subsecond_duration<base_duration,frac_of_second>' to 'boost::posix_time::time_duration::fractional_seconds_type' with [ base_duration=boost::posix_time::time_duration, frac_of_second=1000 ] No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called

On Thu, 21 Jul 2005 18:37:32 -0600, Sean Rohead wrote
I am using VS.NET 2003 and attempting to create a time_duration using hours, minutes, seconds, and milliseconds.
However, I get an error message regarding the 4th parameter (milliseconds).
Here is my code and the error message:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> // main.cpp
#include "boost/date_time/posix_time/posix_time.hpp"
using namespace boost::posix_time;
void main() { time_duration t(8, 45, 00, milliseconds(100)); }
The error is valid. Milliseconds is-a time-duration so you don't pass it as the fourth parameter. Add it instead. Something like: Try this instead: time_duration t(8, 45,0); t += milliseconds(100); or even clearer: time_duration t = hours(8) + minutes(45) + milliseconds(100); Jeff
participants (2)
-
Jeff Garland
-
Sean Rohead