간접 참조 (역 참조) 연산자를 사용하여 배열에 저장된 객체에 대한 포인터를 역 참조 할 수 없습니까? 아니면 내가 잘못하고 있습니까? 다음을간접 참조 연산자를 사용하여 배열 요소 인 객체에 대한 포인터를 역 참조 할 수없는 이유는 무엇입니까?
여기(*v[1]).test();
먼저 인덱스 배열 및 포인터 (v[1]
)를 얻을 :
$ g++ -std=c++11 test.cpp && ./a.out
test.cpp: In function ‘int main()’:
test.cpp:26:13: error: request for member ‘test’ in ‘v[1]’, which is of
pointer type ‘A*’ (maybe you meant to use ‘->’ ?)
*(v[1]).test();
에
변경이이 작업은? test()'-'test()'의 반환 값이 아닌, 참조를 취소하고자하는 배열 요소입니다. * v [1] .test() – cutzero
try :'(* v [1]). – Galik