C ++中的一个奇怪的语法不是operator ==

Changjian YU

我正在阅读/编译一个开源软件包Trilinos。可以在Github上找到源代码。我发现以下奇怪的语法导致在Ubuntu中的gcc 4.9.x工作时Intel编译器(Windows)导致编译错误。

bool Slice::operator!=(const Slice & slice) const
{
  return (not operator==(slice));
} 

错误消息是:

Severity    Code    Description Project File    Line    Suppression State
Error       identifier "not" is undefined   domi    .\packages\domi\src\Domi_Slice.hpp  475 

问题:
1>以上语法是什么意思?
2>这是C ++标准吗?为什么英特尔编译器不支持语法?

博·佩尔森

英特尔编译器正在仿真较旧的VC ++版本,作为扩展(确实如此!),这些备用运算符已被禁用。

您可以通过包含<iso646.h>标头将它们重新找回

或者只是使用!代替not

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在c ++中奇怪的for循环语法

当尝试在C ++中读取文件时,我的文件被附加了一个奇怪的字符序列

C ++中operator =的奇怪行为

在Objective-C中定义一个接受Block并返回Block的Block的语法

理解一个奇怪的 C++ for 循环?

检查输入中是否有任何一个不是C中的整数

使用C在终端中的printf输出中得到一个奇怪的百分号

日期只能输入一个整数,而不是C中的日,月和年

如何首先打开一个窗口,而不是在WPF(C#)中打开MainWindow

指针给出整个数组而不是C ++ RayLib中的一个字符

c#从泛型函数中获取一个空列表,而不是null

如何在 C 中定义一个带有 +(不是字符)的函数?

vulkan-hpp中的奇怪C ++语法

构造函数中的 C++ 语法错误 - 参数是对来自另一个类的对象的引用

为什么我在 C# 和 C++ 中得到一个整数而不是字符串?

我在C ++中遇到了一个奇怪的错误,其中计算2个小整数相加的语句溢出到long long值中

在C中定义一个枚举

C中的一个小混乱

#在C中定义一个元组

在C ++中乘以一个枚举

在C中创建一个指针

奇怪的C#语法

C奇怪的宏语法

c 和 c++ 中奇怪的类似函数的语法

C ++:在另一个函数中声明一个函数不是编译器错误,所以...这是什么?

具有默认实现的虚拟 `operator <=>` 是否在 C++20 中创建了另一个虚拟方法?

Windbg语法-将两个命令(MASM和C ++)组合为一个

你如何 Serial.Write() 一个整数值而不是 C# 中那个 Int 的 ASCII 值

检查C ++中是否只有一个字符串变量不是nullptr