C++ 语言扩展

标签 c++

我已经阅读了常见问题解答,我认为这可能是一个主观问题,但我需要问一下。 任何人都知道 C++ 语言扩展到底是什么(我的意思是正式的)。

我已经看过示例,例如 nvdia CUDA c ext、Avalon 基于事务的 c++ ext。

所以重点是类似于正式定义之类的东西。

谢谢。

最佳答案

语言扩展就是任何超出语言规范要求的东西。您的编译器可能会添加新功能,例如特殊的“min”和“max”运算符。根据标准,您的编译器可能会定义除以零的行为,否则这是未定义的。它可能会为您的 main 函数提供额外的参数。它可能结合了另一种语言的特性,例如允许在 C++ 中使用 C 风格的可变大小数组。它可能是指定函数调用约定的工具。

使用语言扩展通常会使您的代码不可移植,因为当您将代码带到另一个操作系统、编译器甚至编译器版本时,扩展可能不再可用,或者它的行为可能与您最初使用的不同。

关于C++ 语言扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2087357/

相关文章:

c++ - Qt grabWindow 坐标从 GetCursorPos 和 GetWindowRect 转移

c++ - 所有可能的数组组合(并行编程)——最优图着色

c++ - UUID 和 uuid_t 数据类型在赋值后可以更改吗?

c++ - 如何检查一行中的 3 个节点是否相同 C++?

c++ - 将 4 个原始字节转换为 32 位 float

c++ - 为什么 sleep() 会阻塞 std::ostream

C++ 实现我自己的 static_assert

c++ - (C++) 如何根据条件声明对象类成员

C++ 3D 角速度

c++ - OpenCV:如何使用 HOGDescriptor::detect 方法?