程式設計環境:win10,vs2017
#include
**01
namespace
ds01 ;
//測試程式
void
testdssize() }
intmain()
輸出address s1 = 008ff8f7
address s2 = 008ff8eb
address s3 = 008ff8df
建立三個物件,三個物件的位址不同,是三個不同的物件。
**02
namespace
ds02 ;
//測試程式
void
testdssize1()
void
testdssize2() }
ds02::testdssize1() 的輸出
address s1 = 010ffbac
ds02::testdssize2() 的輸出
address s1 = 010ffbac
address s2 = 010ffb9c
**03
namespace
ds03 ;
//測試程式
void
testdssize1() }
ds03::testdssize1() 的輸出
address s1 = 0067f8f8 width=1 height=1
**04
namespace
ds04
//在建構函式初始化成員資料
public
: int
width = 1;
intheight = 1;
}; //測試程式
void
testdssize1() }
ds04::testdssize1() 的輸出
address s1 = 00f9fe08 width=0 height=0
address s2 = 00f9fdf8 width=0 height=0
s1 ,s2
成員資料初始化的結果是0,不是1.
**05
namespace
ds05
//拷貝構造
dssize(
const
dssize
& size
) : width(
size
.width), height(
size
.height) {} //
拷貝賦值
const
dssize
& operator =
(const
dssize
& size)
return
*this; }
//其他構造
dssize(
const
int&
width
, const
int&
height
) :width(
width
), height(
height
) {}
dssize(
const
dssize
* size)
else }
//析構 ~dssize()
public
: const
int& getwidth()
const
const
int& getheight()
const
private
: int
width;
intheight;
}; //過載運算子 << ,不能在類的內部定義,只能放在類的外部定義。
ostream
& operator <<
(ostream
& out
, const
dssize
& size)
//測試程式
void
testdssize1() }
ds05::testdssize1() 的輸出
s1 : address=0x00d3fdb0 width=0 height=0
s2 : address=0x00d3fda0 width=0 height=0
s3 : address=0x00d3fd90 width=0 height=0
s4 : address=0x00d3fd80 width=10 height=5
s5 : address=0x00d3fd70 width=1 height=1
析構析構
析構析構
析構
C 乙個類呼叫另乙個類的成員變數 成員函式
有時候,兩個類之間並沒有繼承的關係,但是其中乙個類需要引用另乙個類中的成員變數或者成員函式。怎樣辦到呢?假設已經新建了兩個類a b。class a class b 現在需要在類a的成員函式中呼叫類b的成員變數b nadd b x,使得a nadd與b nadd相加,那麼只需要在類a的.cpp檔案中包...
任何乙個類只要沒有成員變數,就是執行緒安全的
今天在複習 springmvc 時,看到一篇文章,寫到 springmvc的控制器是不是單例模式,如果是,有什麼問題,怎麼解決?答 是單例模式,所以在多執行緒訪問的時候有執行緒安全問題,不要用同步,會影響效能的,解決方案是在控制器裡面不能寫字段。對這個回答中的 不能寫字段 來實現單例類中的執行緒安全...
C 空類以及沒有成員變數的類的大小
關於c 中空類的大小為1,我們大家都有所了解,但是除了空類之外的其他一些沒有成員變數的類的大小,還是有很多不明之處的。include usingnamespacestd classa classb classc publica classd publicb,publicc intmain 程式執行的...