书上练习题:说是下面这段代码可以编译,就是不能像预期一样工作,让找出问题所在

superwavelet 2014-03-17 10:46:42
书上练习题:说是下面这段代码可以编译,就是不能像预期一样工作,让找出问题所在:
namespace BuildingLibrary
{
class PropertyLine
{
bool SharesEndpointWith(PropertyLine other)
{
XYZ startPoint = other.GetEndPoint(0);
XYZ endPoint = other.GetEndPoint(1);

return startPoint.ArePointsCoincident(m_startPoint) ||
endPoint.ArePointsCoincident(m_endPoint);
}

XYZ GetEndPoint(int index)
{
return (index == 0 ? m_startPoint : m_endPoint);
}

private XYZ m_startPoint;
private XYZ m_endPoint;
}

class XYZ
{
public bool ArePointsCoincident(XYZ otherXYZ)
{
return (X == otherXYZ.X && Y == otherXYZ.Y && Z == otherXYZ.Z);
}

public double X
{
get { return m_X; }
}

public double Y
{
get { return m_Y; }
}

public double Z
{
get { return m_Z; }
}

private double m_X, m_Y, m_Z;
}
}


看了半天没看出来,大家伙帮忙看看,不知道是哪儿有问题呀
...全文
104 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
倒退一天 2014-03-18
  • 打赏
  • 举报
回复
既然能编译,自己运行单步跟踪一下不就行了?
本拉灯 2014-03-17
  • 打赏
  • 举报
回复
public bool ArePointsCoincident(XYZ otherXYZ) { return (X == otherXYZ.X && Y == otherXYZ.Y && Z == otherXYZ.Z); } public double X { get { return m_X; } } public double Y { get { return m_Y; } } public double Z { get { return m_Z; } } private double m_X, m_Y, m_Z; 这里的m_x m_y m_z 一直为0 没看到给他们赋值的地
superwavelet 2014-03-17
  • 打赏
  • 举报
回复
引用 1 楼 wyd1520 的回复:
啥问题,又是一个不懂问问题的人。
书上练习题, 说是找出这段代码的问题, bug
本拉灯 2014-03-17
  • 打赏
  • 举报
回复
啥问题,又是一个不懂问问题的人。

110,561

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧