常量和非常量指针,将被称为

时间:2018-09-24 13:51:50

标签: c++

我有一个简单的问题,但找不到答案: 该标准在const函数和非const函数之间进行选择的规则是什么。

这是一个例子

#include <iostream>
class B{
int a;

public:

B(int _a) : a(_a){}

const int& getA() const{
    std::cout << "CONST\n";
    return a;
}

int& getA(){
    std::cout << "NON CONST\n";
    return a;
}

};

int main(){

B b(3);

b.getA(); //print non const
int a = 3 + b.getA(); //same
};

两个示例都使用非const版本。我认为它会选择const版本,因为没有做任何修改。

0 个答案:

没有答案