C#的初学者,Inner类的有作用范围么

enhydraboy 2003-03-05 04:15:42
我从C#的specification上输入了一段程序
Stack.cs

using System;

namespace Helloworld
{
/// <summary>
/// Stack 的摘要说明。
/// </summary>
public class Stack
{
private Node first=null;
public bool empty()
{
return (first==null);
}
public Object Popup()
{
if(first==null)
{
throw new Exception("Can't popup from an empty stack");
}
else
{
Object temp=first.Value;
first=first.Next;
return temp;
}
}
public void Push(Object o)
{
first=new Node(o,first);
}
public Stack()
{
//
// TODO: 在此处添加构造函数逻辑
//

}
class Node
{
public Node Next;
public Object Value;
public Node(Object Value):this(Value,null){}
public Node(object value, Node next)
{
Next =next;
Value=value;
}

}
}
}

Hello.cs

using System;

namespace Helloworld
{
/// <summary>
/// Class1 的摘要说明。
/// </summary>
class HelloWorld
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main(string[] args)
{
//
// TODO: 在此处添加代码以启动应用程序
//
Console.WriteLine("Hello,world");
Console.WriteLine("Test Stack");
Stack s=new Stack();
for(int i=0;i<10;i++)
{
s.Push(i);
}
while(!s.empty())
{
Console.WriteLine(s.Popup());
}
}
}
}

运行正常。
我的问题是,Node类的写法是嵌在Stack中的,那么我在Hello.cs中是否可以创建Node类的对象呢?
...全文
35 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ahmy_0 2003-03-09
  • 打赏
  • 举报
回复
对。
anggogo 2003-03-08
  • 打赏
  • 举报
回复
我楼上说的是对,其实你也可以看看MSDN是怎么解释的
enhydraboy 2003-03-06
  • 打赏
  • 举报
回复
不好意思,应该怎么写。
是不是写成
Helloword.Stack.Node
hbuser 2003-03-06
  • 打赏
  • 举报
回复
可以,但是要全名引用,相当于加名字空间
enhydraboy 2003-03-06
  • 打赏
  • 举报
回复
但是我在Hello.cs中不能这么些呀,
Node o=new Node(2,null)
qimini 2003-03-06
  • 打赏
  • 举报
回复
Stack.Node yourClassName=new Stack.Node();
xieyong_1983 2003-03-05
  • 打赏
  • 举报
回复
不知道,
qimini 2003-03-05
  • 打赏
  • 举报
回复
可以的

111,118

社区成员

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

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

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