最新回答 / 等候稻香
解決方案:頭文件和源文件都在同一個(gè)項(xiàng)目中(即Coordinate.h和Coordinate.cpp一起放在項(xiàng)目中),頭文件中定義方法,在源文件中實(shí)現(xiàn),并且方法前加上Coordinate::,關(guān)鍵是Coordinate.cpp中加上include “stdafx.h””stdafx.h“的原理:編譯器通過一個(gè)頭文件stdafx.h來使用預(yù)編譯頭文件。stdafx.h這個(gè)頭文件名是可以在project的編譯設(shè)置里指定的。編譯器認(rèn)為,所有在指令#include "stdafx.h"前的代碼都是預(yù)編譯的,它跳過#...
2015-09-08
最贊回答 / 走進(jìn)科學(xué)
1.如果有多個(gè)成員數(shù)據(jù),構(gòu)造函數(shù)可以一次給多個(gè)成員數(shù)據(jù)設(shè)定初始值,set函數(shù)一般都是一個(gè)成員數(shù)據(jù)對應(yīng)一個(gè)set函數(shù).一次只能設(shè)定一個(gè).2.構(gòu)造函數(shù)只能設(shè)定初始值,如果設(shè)定了初始值之后,又想要再更改這個(gè)值.那么就只能用set了.
2015-08-25
最贊回答 / Asprin_J
和返回類型有關(guān), return *this,返回類型是Array,是值傳遞,返回后會先copy出一個(gè)臨時(shí)對象,而return this是返回Array*類型,返回值本質(zhì)上也是值傳遞,生成一個(gè)臨時(shí)指針對象,但是這個(gè)對象內(nèi)容是指向Array的地址。
2015-08-13
最贊回答 / qq_渴望六維空間_0
樓上說的是正確的,這個(gè)和之前講的const是一致的,比如:const int A;int *p=&A;這個(gè)就是錯(cuò)誤的,因?yàn)锳已經(jīng)設(shè)置為常量,而指針p是可以讀寫的,用一個(gè)權(quán)限大的指針p去指向一個(gè)權(quán)限小的A,是不可以的,會有風(fēng)險(xiǎn)。coordinate的對象被const修飾,變成了常對象,那么指向它的指針this也必須變成常指針,否則就有改變常對象值得風(fēng)險(xiǎn),因此成員函數(shù)內(nèi)容無論是否改變了常對象的值,都要變成常成員函數(shù),這也就是為什么getX()和getY()要變成常成員函數(shù)getX() const和ge...
2015-08-07
最贊回答 / onemoo
構(gòu)造函數(shù)的函數(shù)名都一樣,它們當(dāng)然是重載的。不過可能會有些特殊之處,比如在調(diào)用只有一個(gè)參數(shù)的構(gòu)造函數(shù)時(shí),在傳參中可能會發(fā)生隱式類型轉(zhuǎn)換。
2015-08-03