C++“括号”运算符

Mig*_*l P 0 c++ if-statement class operators

在 c++ 中,如果使用这些类型的大括号:

if (x == y)
{ <---
} <---
Run Code Online (Sandbox Code Playgroud)

是否可以创建一个使用这些的类?与此类似的地方:

class x
{
    operator {} foo(int something)
    {
        do something...
    }
};
Run Code Online (Sandbox Code Playgroud)

附注。我不知道这些括号叫什么,大括号?

谢谢你

Pub*_*bby 5

花括号实际上用于许多不同的事情:

  • 复合语句
  • 初始化程序
  • 结构/枚举/类/联合/命名空间说明符

(可能还有几个!)

这些都不是运算符,也不能重载。

您可能感兴趣的是 C++11 的大括号初始化语法,如果您想要某种语法,可以使用它:

class x
{
    x(int something)
    {
        do something...
    }
};

x foo{5};
Run Code Online (Sandbox Code Playgroud)