微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

检验std :: chrono持续时间小于0的惯用方式

如何解决检验std :: chrono持续时间小于0的惯用方式

我知道我可以做到

if (timeLeft.count() < 0)

但是我不知道自从我也可以做以来最好的方法是什么

if (timeLeft<std::chrono::seconds(0)) // or milliseconds or nanonseconds...

注意:我假设两项检查都相同,但我不是计时专家。

edit:完整示例:

#include<chrono>
int main(){
    const std::chrono::nanoseconds timeLeft(-5);
    if(timeLeft<std::chrono::seconds(0)){
        return 47;
    }
}

edit2:std::chrono::seconds(0)的潜在问题在于,新手程序员可能会认为它涉及了舍入,尽管没有。

解决方法

表达这一点的方法之一是使用std :: chrono :: duration文字(https://en.cppreference.com/w/cpp/chrono/duration)。它又短又干净:

    <form:form action="/institutionAddNew" method="post" modelAttribute="institution"  enctype="multipart/form-data">
        <form:input path="instName" />
        <input type="file" name="logo" />

        <button type="submit" class="btn btn-primary">Submit</button>
    </form:form>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。