c++ - 可能使花括号过载?

我几乎可以肯定不会,但是我没有找到明确的答案:

花括号是否可能过载?如:

class Foo
{
    int i;
    public:
    int operator{}(int _i){return _i+42;};    
};

int main()
{
    Foo f;
    f{2};
    return 0;
}

从来没有提到过,无论是允许还是不允许。 gcc 4.6不会编译它,但这并不意味着它是标准不允许的,对吗?

最佳答案

在C++中,大括号{}不同于[](数组下标运算符)或()(函数调用运算符),因此它们不能重载。