将时间转换为分钟和秒
Convert time into minutes and seconds
我制作了一个代码,使用构造函数将时间转换为分钟和秒。在输出中,我以秒为单位获得时间,但它没有以分钟为单位显示时间,并且无法找出我的错误,所以任何人都可以帮助我......
#include<iostream>
using namespace std;
class Time
{
public:
Time(int);
Time(float);
};
Time::Time(int t)
{
cout << "Time in seconds: " << t*60*60 << "n";
}
Time::Time(float t)
{
cout << "Time in Minutes: " << int(t*60) << "n";
}
int main()
{
int hr;
cout << "Enter the time in Hours: ";
cin >> hr;
Time t1(hr);
Time t2(float(hr));
}
您没有正确进行类型转换。您需要通过将所需的类型放在括号中来进行类型转换,而不是尝试将其用作函数。例如,您需要执行以下操作:
Time t2((float) hr);
cout << "Time in Minutes: " << (int) t*60 << "n";
虽然Time t2(float(hr));
是合法的,但它是一个函数原型,因为这是一个令人烦恼的解析。它等价于Time t2(float hr);
,这意味着t2
是一个函数,它接受一个名为"hr"的float
并返回一个Time
。这没有任何效果,因为这样的函数永远不会实现或调用。
如果这看起来很荒谬,这里有一种可以提供帮助的思考方式。请考虑以下代码:
Time t2 (float (*hr));
显然,这是一种将t2
声明为函数的完全正常的方式,该函数将指针指向名为"hr"的float
。好吧,没有*
也不应该合法吗?语法规则C++是,如果某物可以成为原型,那就是原型。
应该有效:
Time t2((float)hr);
Time::Time(int hour){
cout << "Time in seconds: " << hour*60*60 << "n";
cout << "Time in minutes: " << hour*60 << "n";
}
尝试添加
Time::Time(float t)
{
cout << "Time in Minutes: " << float(t*60) << "n";
}
告诉我它是否有效..
相关文章:
- C++为构建时间获取QDateTime的可靠方法
- 从持续时间构造std::chrono::system_clock::time_point
- 提升,以分钟精度获得 UTC 时间
- 仅将纪元字符串保存到 mysql 日期时间年/月/日,但没有小时分钟秒
- 从当前时间减去 40 分钟
- 执行/在循环中停留一段时间,例如 1 分钟
- 将时间转换为小时、分钟和秒
- 解析日期字符串以从时间戳中删除小时、分钟和秒
- 将年龄在几年,小时,几分钟和秒的时间内转换
- 时间偏移计算将关闭一分钟
- 将时间转换为分钟和秒
- 将十进制时间转换为小时和分钟,以便以C++显示
- 对根据时间和分钟计算通话成本的简单家庭作业程序感到沮丧
- 制作旋转器的功能,每天每分钟创建一个时间戳
- 如何显示系统当前时间+3分钟
- 在终止/非活动会话上执行简单查询需要几分钟时间
- 我如何使用tm结构添加分钟到当前时间
- 设计一个结构来存储时间和日期.写一个函数来计算两个时间之间的差(以分钟为单位)
- 保持存活时间——在c++中不能减少到一分钟以下
- 时间戳之间的差异(以分钟为单位)