멤버에 대한 참조를 반환하는 메서드로 클래스를 만들었습니다 (잘 캡슐화되지 않았습니다). 내가 재곡 연료 소모량auto가 참조 유형의 함수를 감지하지 못하는 이유는 무엇입니까?
class classA
{
public:
classA(classA & rhs)
{
cout<<"copy constr A"<<endl;
};
classA() = default;
};
class classB
{
private:
classA obA;
public:
classA& getRefA(){return obA;}
};
int main()
{
classB obB;
auto ob = obB.getRefA();
}
에 대한 자동을 사용하고 그 결과 복사 constr에 나는 함수에서 참조를 감지하지 않는 자동차를 들었는데
입니다. 참조가없는 유형 만 자동으로 감지합니까?
예. 이것은 C++ 유형 공제가 작동하는 방식입니다. 스콧 메이즈 (Scott Meyes)는 자동으로 "유형 공제 (type deduction)"에 관해 많은 이야기를 나누었으므로 좀 더 자세한 정보를 얻으려면 Google에 문의하십시오. 아니면 그를 통해 효과적인 현대 C + +를 데리러. 그는 이것에 전념 한 전체 장을 가지고있다. – Hayt
[CppCon 2014 : Scott Meyers "유형 공제 및 왜 당신 케어"] (https://www.youtube.com/watch?v=wQxj20X-tIU) – Borgleader