问题描述
- 未将对象引用实例化为对象实例?????求解脱。。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ConsoleApplication5
{
class BSTree
{public class node
{
public int key;
public sbyte data;
public node lchild;
public node rchild;
}internal static class DefineConstantsBSTree
{
public const int MaxSize = 100;
}
public static class GlobalMembersBSTree
{
public static int[] path = new int[DefineConstantsBSTree.MaxSize];
public static void DispBST(node bt){ if (bt!=null) { Console.Write(""{0:D}""bt.key); if (bt.lchild!=null || bt.rchild!=null) { Console.Write(""(""); DispBST(bt.lchild); if (bt.rchild!=null) Console.Write(""); DispBST(bt.rchild); Console.Write("")""); } }}public static int InsertBST(ref node p int k) { if (p == null) { p.key = k; p.lchild = p.rchild = null; return 1; } else if (k == p.key) return 0; else if (k<p.key) return InsertBST(ref p.lchild k); else return InsertBST(ref p.rchild k);}public static node CreatBST(int[] A int n){ node bt = null; int i = 0; while (i<n) InsertBST(ref bt A[i++]); return bt; }public static int SearchBST(node bt int k int[] path int i){ if (bt == null) return i; else if (k == bt.key) { path[i+1] =bt.key; return i+1; } else { path[i+1] =bt.key; if (k<bt.key) return SearchBST(bt.lchild k path i+1); else return SearchBST(bt.rchild k path i+1); }}public static void SearchResult(node bt int k1){ int r; int j; r = SearchBST(bt k1 path -1); for (j = 0; j<=r; j++) Console.Write(""{03:D}""path[j]); Console.Write("" "");}internal static int Main(){ node bt; int k1 = 65; int k2 = 32; int[] a = {43911018826533592773}; int n = 10; Console.Write(""创建的BST树:""); bt = CreatBST(a n); DispBST(bt); Console.Write("" ""); Console.Write("" 查找{0:D}关键字:""k1); SearchResult(bt k1); Console.Write("" 查找{0:D}关键字:""k2); SearchResult(bt k2); return 0;} }}
}
解决方案
未将对象引用到实例
有关Sql2005 与未将对象引用到实例
让<未将对象引用到实例>见鬼去吧!
解决方案二:
CreatBST(int[] A int n)的方法里
while (i<n) InsertBST(ref bt A[i++]);
数组下标越界了,这样改一下
while (i<n) InsertBST(ref bt A[++i]);
解决方案三:
你不是逗么,if(n==NULL){n.k}不错才见鬼呢,如果为NULL的时候n=new test()
解决方案四:
p这个对象都为null了,你怎么还能使用它调用成员呢
解决方案五:
(╯з╰)不好意思我回答错了,看岔了,确实是p == null的问题
解决方案六:
(╯з╰)不好意思我回答错了,看岔了,确实是p == null的问题
解决方案七:
应该是p!=null吧,哪里抄的程序。。。。。。。。。。。。。。
时间: 2024-09-09 03:32:44