gpt4 book ai didi

c++ - 定义多字数据类型

转载 作者:搜寻专家 更新时间:2023-10-31 00:53:48 26 4
gpt4 key购买 nike

C++ 具有long long intunsigend int 等内置类型。类型可以与限定符组合,例如 constvolatilemutable

为什么 long long int 是数据类型?为什么不命名为 longLongInt?多字数据类型如何工作?我可以自己定义吗?

是否可以针对自定义数据类型定义自定义限定符?

例如,考虑 3D 中的线性代数 vector 。可以定义一个类 LinAlVector,它包含 vector 的 x-、y-、z- 分量。

如果我现在需要确保这个 vector 是一个单位 vector (长度等于 1),我想知道我是否可以写

isUnit LinAlVector vec(x,y,z);

其中 isUn​​it 是影响 LinAlVector 行为的修饰符(例如,如果定义了非单位 vector ,则会出现编译器错误)。

我知道面向对象的直接方法是从 LinAlVector 派生一个类 UnitLinAlVector

最佳答案

Why is long long int a datatype? Why is it not named longLongInt?

因为这是标准委员会决定的名称。之所以选择这个名称,可能是因为它与 C99 中的等效数据类型同名。

就其值(value)而言,如果将其命名为 longLongInt,则必须在该语言中引入一个新关键字。这是要避免的事情,因为引入新关键字不向后兼容。 long long int 没有引入任何关键字,因为longint 已经是关键字。

Can I define my own?

不,作为该语言的用户,您可以创建类型别名和新的类类型,但不能创建新的基本类型。

作为编译器实现者,您当然可以。

Is it possible to define a customized qualifier

不作为该语言的使用者。

关于c++ - 定义多字数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47548773/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com