在c ++中使用时如果使用这些大括号:
if (x == y)
{ <---
} <---
是否可以创建一个使用这些的类?在某个地方类似:
class x
{
operator {} foo(int something)
{
do something...
}
};
PS。我不知道这些括号是什么,大括号?
谢谢
答案 0 :(得分:4)
不,因为大括号不是运算符,并且您无法创建新运算符 - 您可能只会重载现有运算符。
答案 1 :(得分:4)
大括号实际上用于许多不同的事情:
(可能还有一些!)
这些都不是运营商,也不会超载。
您可能感兴趣的是C ++ 11的大括号初始化语法,如果您需要某种语法,可以使用它:
class x
{
x(int something)
{
do something...
}
};
x foo{5};
答案 2 :(得分:2)
是的,它们被称为花括号或花括号或花括号。它们表示一个块或一组初始化值。你无法重新定义它们的含义。
答案 3 :(得分:1)
(据我所知,它们被称为花括号或花括号。)
他们不是运营商。
在您提供if ()
的示例中,它们定义范围的边界。或者说到OO,它们定义了命名空间。或者是一个班级。
而且我相信你不能超载它们(这没有任何意义,真的。)