행렬 작업을 위해 C ++로 작은 행렬 라이브러리를 작성하고 있습니다. 그러나 내 컴파일러는 전에는 그렇지 않은 곳에서 불평합니다. 이 코드는 6 개월 동안 선반에 있었고 컴퓨터를 데비안 에칭에서 레니 (g ++ (Debian 4.3.2-1.1) 4.3.2)로 업그레이드했지만 동일한 g ++의 우분투 시스템에서 동일한 문제가 있습니다. .
내 매트릭스 클래스의 관련 부분은 다음과 같습니다.
namespace Math
{
class Matrix
{
public:
[...]
friend std::ostream& operator<< (std::ostream& stream, const Matrix& matrix);
}
}
그리고 "구현":
using namespace Math;
std::ostream& Matrix::operator <<(std::ostream& stream, const Matrix& matrix) {
[...]
}
이것은 컴파일러가 제공 한 오류입니다.
matrix.cpp : 459 : 오류 : 'std :: ostream & Math :: Matrix :: operator << (std :: ostream &, const Math :: Matrix &)'는 정확히 하나의 인수를 가져야합니다.
이 오류로 인해 약간 혼란 스럽지만 6 개월 동안 Java를 많이 수행 한 후에도 C ++이 약간 녹슬 었습니다. :-)