운영자를위한 C ++ 컴파일러 오류에 친구 기능, 아니 일치 * 문제

최근 리눅스에서 컴파일 된 C ++ 프로그램은, 우리는 많은 명확하게 항상 기능을 찾을 수 없습니다 달성 운영자 XXX, 아무 짝을 제안하지 연산자 연산자의 유형의 친구를 달성 한 것으로 나타났다.

그러나 클래스 멤버 함수에 친구 기능은 조금 이상하다, 아무 문제 없습니다.

일부 발견 찾을 후, 원래의 문은 클래스 친구 함수 선언 만 권한을 선언, 따라서 클래스 정의 진정한 친구 함수 선언 외부에 추가해야합니다. (VS에서 아무런 문제가 있지만, 그러나 리눅스에서 컴파일)

 

클래스 EXPR
{
공공의:
       친구 EXPR 연산자 + (CONST EXPR 및 X, Y 및 EXPR CONST) // 문 권한 만
        
}
EXPR 연산자 + (CONST EXPR 및 X, Y 및 EXPR CONST) // 이것이 실제 문

  

뒷면에 메모를 추가하려면, 당신은 오류 클래스가 전면에 정의되지 않은 추가하라는 메시지가 표시됩니다.

 

 

 

 

추천

출처www.cnblogs.com/corineru/p/11983479.html