在所有我的課的教授們使用這種技術來創建一個項目,一個指針它被傳來傳去強調:最初是否可以創建C++指針而不是創建變量,然後爲其指定一個指針?
更新只是一個錯誤,同時打字。太習慣於java。
Item item;
Item* pItem = &item;
現在你可以放心地圍繞項目使用pItem沒有在內存中複製項目通過。但是,如果我只是做到以下幾點:
Item* item = new Item;
然後,我有一個指針,我可以取消引用主或你有什麼,那我可以簡單地繞過作爲一個變量,是一個點相信它不會被重複。
是不是有什麼毛病創建指針我創建了一個新的對象?
此外,我在Java中花了一段時間回到C++花費我的暑期ALLEGRO5,所以有人可以清楚地解釋在CPP中創建一個新對象的不同方法,以及每種方法實際上做了什麼?
請問:
Item item;
實際上使一個新的項目對象,或像Java是它只是一個空引用?
你的方式沒有錯。事實上,第一段代碼是無用的。 – 2013-05-01 04:50:36
您的問題中的第一行代碼「Item item = new Item;」無效。這使得很難回答你的問題,因爲你顯示的兩個片段可能會有不同的行爲,這取決於第一個片段被糾正的方式。 – 2013-05-01 04:51:09
你在問題標題中提出一件事,在它的身上另一件事。另外,你應該澄清你是否確實是指'Item item = new Item;'或不。這在一般情況下不起作用。 – juanchopanza 2013-05-01 06:11:40