程式語言問題 - 考試

Table of Contents

請問一下主程式的b2=b1那行是代表b2指向b1的記憶體位置嗎??
但是我列印出來b2還是原本的b2位置耶=.=....

class A{
public:
int x;
protected:
int y;
};
class B:public A{
public:
int z;
};
int main(int argc, char *argv[])
{

A a1;
B b1,b2;
b2=b1;//這行執行是做什麼的??

}

麻煩知道的大大說明一下!感謝><....

--

All Comments

Selena avatarSelena2013-05-28
b2=b1好像是在做兩個物件的比較 比較是否相等 而不是給值
Ida avatarIda2013-05-31
比較??b1==a1....
Robert avatarRobert2013-06-05
不對 剛剛去查書 好像是在做轉型?
Jessica avatarJessica2013-06-09
可是兩個不都是class B!!
Ethan avatarEthan2013-06-12
我看JAVA的書是在作類別的轉型啊 最近都在看JAVA熊熊看到
Ophelia avatarOphelia2013-06-15
C++的程式碼 剛剛還在想說你怎麼沒有new物件出來
C++好像不用new就會產生物件了?
Sandy avatarSandy2013-06-18
恩~C++宣告時就已經配置記憶體了~不用new
Isla avatarIsla2013-06-20
把b1裡面的值copy給b2
Linda avatarLinda2013-06-24
應該是assign吧。 將b1變數的值覆蓋過去b2變數的值。
Ivy avatarIvy2013-06-29
抱歉=.= C++的語法忘光了 給錯誤訊息
Jacob avatarJacob2013-07-04
順便請問一下 JAVA的物件給值也是b2=b1嗎?
Mia avatarMia2013-07-05
所以是將b1裡面有的屬性值都給b2嗎?
Leila avatarLeila2013-07-07
對。 程式裡的b1=b2,就是把右邊的值指派(覆蓋)左邊的值
Ivy avatarIvy2013-07-09
java也是同樣邏輯。
Rachel avatarRachel2013-07-09
更正一下,是b2=b1。
Skylar Davis avatarSkylar Davis2013-07-10
遇到這種問題會用程式跑一下驗證,如果你沒有裝VC,
Doris avatarDoris2013-07-14
也可以用線上版的跑一下驗證看看
http://codepad.org/
Hardy avatarHardy2013-07-18
所以是將b1裡面有的屬 https://daxiv.com