C中未將物件引用設定到物件的例項是什麼意思

時間 2021-10-14 20:16:29

1樓:大野瘦子

意思是你使用這個物件之前,沒有將之例項化。

比如:label l = new label();

這個是已經例項化了,可以對其成員進行操作。

注意:例項化是呼叫構造方法要加括號。

如果你是label l;

那下面如果你呼叫l.text之類的屬性,那就會出現你那個錯誤。

程式執行多次,會出現異常:未將物件引用設定到物件的例項問題**:

listlist = null;

tryint xx = list.count;

list=getlist();//給list賦值方法for (int i = 0; i < list.count; i++)

if (list[i].contains("11"))messagebox.show("success");

catch(exception ex)

marshal.getlastwin32error(), ex.message, ex.stacktrace));

2樓:哈

首先出錯了,一定要學會debug,debug,debug.

一、網路上的一般說法

1、viewstate 物件為null。

2、dateset 空。

3、sql語句或datebase的原因導致datareader空。

4、宣告字串變數時未賦空值就應用變數。

5、未用new初始化物件。

6、session物件為空。

7、對控制元件賦文字值時,值不存在。

8、使用request.querystring()時,所獲取的物件不存在,或在值為空時未賦初始值。

9、使用findcontrol時,控制元件不存在卻沒有做預處理。

10、重複定義造成未將物件引用設定到物件的例項錯誤.

二、(1)所設定的變數為空值或沒有取到值,一般出現在傳遞引數的時候出現這個問題,也會在使用datagrid或gridview或datalist等資料控制元件時出現.

(2)控制元件名稱與codebehind裡面的沒有對應

(3)未用new初始化物件

(4)在程式中所引用的控制元件不存在

解決方法:

(1)使用try..catch...finally捕捉錯誤,或直接用response.write()輸出所取的變數值

(2)檢視**中是否存在未初始化的變數

三、sqlconnection.open   未將物件引用設定到物件的例項

在使用vs2003開發 asp.net程式時候 有時候操作 sqlconnection物件的open()方法時候會出現

未將物件引用設定到物件的例項。

說明: 執行當前 web 請求期間,出現未處理的異常。請檢查堆疊跟蹤資訊,以瞭解有關該錯誤以及**中導致錯誤的出處的詳細資訊。

異常詳細資訊: system.nullreferenceexception: 未將物件引用設定到物件的例項。

參考資料:http://www.cnblogs.com/keenleu

拓展資料:

c#是一種安全的、穩定的、簡單的、優雅的,由c和c++衍生出來的物件導向的程式語言。它在繼承c和c++強大功能的同時去掉了一些它們的複雜特性(例如沒有巨集以及不允許多重繼承)。c#綜合了vb簡單的視覺化操作和c++的高執行效率,以其強大的操作能力、優雅的語法風格、創新的語言特性和便捷的面向元件程式設計的支援成為.

net開發的首選語言。

3樓:匿名使用者

textbox t;

此時,你僅在堆疊中宣告瞭一個變數t,因為你沒有(new textbox())例項化它!

所以,當你呼叫t.text時,會丟擲異常。

在你例項化(t=new textbox())後,系統將在記憶體中給你分配一塊地方,用來存真正的textbox物件。這時就可以呼叫t.text了!

例項化後,變數t只是指向記憶體中textbox物件的地址。

據個例子:

比如你想用張三家的洗衣機,可你卻不知道他家住在哪。

你必須先知道他家的地址,然後再去他家,呼叫他家的洗衣機!

而例項化就相當於你找到他家的過程!

4樓:孝爾絲矯琪

dictionary這個泛型是一個型別

而你當作變數使用肯定會報錯嗎

所以報個為將物件例項化咯

5樓:典素潔巨集斯

看報錯就知道了,物件沒有例項化,

你不能使用一個沒有例項化的物件。

6樓:蘇靜秀糜吉

根據你的描述

我建了個同樣的程式

為了找出跟你相同錯誤的

我測試了很多可能出錯的情況

未將物件引用設定到物件例項

這個錯誤

出現在1、沒有開啟子窗體

2、子窗體沒有

f.mdiparent

=this;

3、子窗體中沒有

任何控制元件或

active的控制元件

//(richtextbox這種型別的文字框)樓上又見abc所說的

也會出錯但是不是這種錯誤

7樓:

你用了不存在的東西就會這樣,

例如string strs=new string

這時你去引用strs[4]就會出這個錯,因為這個東西沒有

8樓:

沒有例項化 用new

比如定義了一個類 data

例項華就是 data data1 =new data;

9樓:裔採文望碧

xinyuangong_load事件裡可能出現問題的點:

1)classsql.ds這個物件有可能為null引起異常

2)classsql.ds.tables["view_1"],tables["表名"],表名不對啊,這個表名根本就不是指資料庫表的表名,你想一下,如果這個地方是聯合多表查詢,你這個表名怎麼寫啊,你這麼寫的結果就是classsql.

ds.tables["view_1"]為null

button1_click事件裡可能出現問題的點:

1)還是classsql.ds.tables["view_1"]是否有可能為null的情況,如果為null,classsql.

ds.tables["view_1"].rows肯定會出異常

2)classsql.ds.tables["view_1"].rows的count是否大於x(而且你的x也未初始化),如果查詢結果為0行,即使x=0也會出現異常

3)賦值的那一串**classsql.ds.tables["view_1"].rows["列名"],請確認這些列名在查詢結果是否均存在,且是否一致(有可能一個字元寫錯就會有異常)

未將物件引用設定到物件

提示你 未將物件引用到例項 可能是request goodsid tostring 的值為空,你在string sqlstr3 select from tb goodsinfo where goodsid request goodsid tostring 前面加個語句,輸出request goods...

c中父類引用指向子類物件問題,c 中父類引用指向子類物件問題深究

記憶體分配肯定不一樣啦呀 a an new b 說明 在a堆裡面站了一個地址,然後在棧裡面存值 這個值是例項化new b 的值 b b new b 說明 在棧裡面直接開闢了一個b的空間!然後堆裡面有b的地址來指向直接開闢的空間!記憶體,堆疊?c 的東西這是,有的時候從c 的角度來考慮,不要管c 的指...

c 類與物件,c 中類和物件的關係

include using namespace std class a public a a int jc int x int getx return n 此處不是成員函式,應刪掉。private int n static int count a a cin n count a a cout usi...