美文网首页bentley开发C++ 2a
mdl中使用C++11的自定义字面量的新功能

mdl中使用C++11的自定义字面量的新功能

作者: 左图右码 | 来源:发表于2022-05-17 12:29 被阅读0次

mdl中写测试代码经常要进行主单位和Uor的转换,虽然借助宏能做到简洁,但不像在MVBA那样完全隔绝了UOR的转换,全在主单位层面操作,但C++11的新功能却能做到同样的简洁,在写测试代码的时候尤其省事:

inline long double operator "" _toUor(long double masterUnit)
{
    return mdlCnv_masterUnitsToUors(masterUnit);
}

inline long double operator "" _toMaster(long double uorUnit)
{
    return mdlCnv_uorsToMasterUnits(uorUnit);
}

inline long double operator "" _toUor(unsigned long long masterUnit)
{
    return mdlCnv_masterUnitsToUors(masterUnit);
}

inline long double operator "" _toMaster(unsigned long long uorUnit)
{
    return mdlCnv_uorsToMasterUnits(uorUnit);
}

void createLine()
{
    MSElement li{};
    auto x = 1000_toUor;
    DPoint3d pts[] = { {},{x,500.1234_toUor,0} };
    mdlLine_create(&li, nullptr, pts);
    mdlElement_add(&li);
}

这个用法在C++14上略有改进,代码不麻烦,不解释,请享用!

相关文章

  • mdl中使用C++11的自定义字面量的新功能

    mdl中写测试代码经常要进行主单位和Uor的转换,虽然借助宏能做到简洁,但不像在MVBA那样完全隔绝了UOR的转换...

  • 用户自定义字面量

    在c++11中,运行用户自定义字面量了。即你可以通过一个后缀来标识字面量是什么类型。 自定义函数返回类型 oper...

  • 面向对象(二)创建对象的几种方法

    创建对象的几种方法 字面量方式 使用内置的构造函数 使用简单工厂函数 自定义构造函数 01字面量的方式创建对象 结...

  • 0. 详解python中格式化3种方法f/format/%

    一、字面量含义 1、字面量:以变量或常量给出的原始数据,在程序中可直接使用字面量2、字面量的差值:变量与常量以及表...

  • ES6系列 (三)模板字面量

    特性 模板字面量实现字符串插值 模板字面量实现多行字符串 模板字面量实现可重用的模板 理解标记模板字面量如何自定义...

  • JavaScript实现创建自定义对象的常用方式总结

    对象字面量方式对象字面量方式是创建自定义对象的首选模式,简单方便。 缺点:使用同一个接口创建很多对象,会产生大量的...

  • JS2-1

    对象字面量方式对象字面量方式是创建自定义对象的首选模式,简单方便。缺点:使用同一个接口创建很多对象,会产生大量的重...

  • golang类型字面量

    类型字面量又被称作“未命名类型” 基本上除自定义类型、预定义类型外都是类型字面量。 以下都是类型字面量: gola...

  • Java中的字面量

    整数字面量 八进制数 (octal, 基数是8):在值前面加一个前导0来表示,如04。 十六进制 (hexadec...

  • 使用字面量

    这是使用字面量语法替代常见的alloc,init方法创建NSNumber,NSString,NSArray,NSD...

网友评论

    本文标题:mdl中使用C++11的自定义字面量的新功能

    本文链接:https://www.haomeiwen.com/subject/tmfnurtx.html