gpt4 book ai didi

c++ - 一对函数调用运算符

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:29:44 25 4
gpt4 key购买 nike

我有一个带有一对函数调用运算符的函数对象 A(第 4 行和第 5 行):

class A{
public:
A(int x) : _x(x){}
int operator () () const { return _x; } // line 4
int & operator () () { return _x; } // line 5
private:
int _x;
};

使用了相似的调用运算符对 here .问题是:我是否需要第 4 行?第 4 行定义的运算符是否会被调用?在以下情况下:

A a(7);
a() = 8;
cout << a() << endl;

总是调用第 5 行的运算符。

最佳答案

是的,将使用第 4 行,示例:

 A a(3);  
const A b(2);
a(); // from line 5
b(); // from line 4

关于c++ - 一对函数调用运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18040460/

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