运算符优先级超载在C 中
Operator Precedence Overloading in C++
当您在C 中超载运算符时,为什么不更改操作员优先级?例如,如果您有一个类,在乘法之前进行添加是有意义的,那么如何使添加操作员具有比乘法更高的优先级?
这与此问题操作员超负荷和优先级不同因为我问为什么以及如何解决此限制。
我希望避免编译器自定义,并仅使用C 14标准。第三方库还可以。
传统编译器设计首先解析语法,然后弄清每个操作员来自何处。
像YACC这样的编译器设计工具早在C 之前就存在。因此,传统编译器会随着时间的推移而演变,遵循首先解析源代码语法的一般原则,然后试图弄清楚如何与每个操作员做些什么。因此,编译器首先看到了语言的结构,也是最重要的。而且C 标准实际上希望使编写C 编译器不重新发明已经发明的每个轮子。
相关文章:
- C++优先级队列,按对象的唯一指针的特定方法升序排列
- 按对象的特定方法按升序排列的C++优先级队列
- 使用2个键的cpp-stl::优先级队列排序不正确
- 为什么我需要C++中不同的排序格式来对这个USACO代码上的数组和优先级队列进行排序
- 打印优先级队列
- 带自定义比较器的最小优先级队列
- 寻找地理和伤害意味着超载
- 优先级队列自定义比较器
- 排序数组优先级队列
- 更改运行时优先级队列的排序功能
- 没有可行的超载'='用于shared_ptr
- "专业化不参与超载"
- 优先级队列构造函数的工作
- 实现优先级队列
- 优先级队列功能比较
- C++ 带有函数指针的运算符优先级
- 将更高的优先级设置为 boost::asio 线程处理进程
- 在C++中打印对的优先级队列的所有值时出现问题
- <<运算符优先级与字符串比较
- 运算符优先级超载在C 中