我试图重载<<运算符以显示矩阵,但它说我的私有成员都无法访问。
在我的头文件中,我有:
friend ostream& operator<<(ostream& os, const matrix& out);
对于我的私人会员,我有:
private:
int p_rowSize;
int p_rowSize;
vector<vector<double> > p_matrix;
在我的实现文件中,我有以下代码,我不确定我应该如何让它工作:
ostream& operator<<(ostream& os, const matrix& out)
{
for (int i = 0; i < p_rowSize; i++)
{
for (int j = 0; j < p_colSize; j++)
{
cout << "[" << p_matrix[i][j] << "] ";
}
cout << endl;
}
}
它告诉我p_colSize,p_rowSize和p_matrix在这里都是未定义的,但在我编写的任何其他函数中都没有。