c++實(shí)例研究
從0開始
C++博客
::
首頁
::
新隨筆
::
聯(lián)系
::
聚合
::
管理
::
104 隨筆 :: 0 文章 :: 20 評論 :: 0 Trackbacks
<
2025年8月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
公告
常用鏈接
我的隨筆
我的評論
我參與的隨筆
留言簿
(1)
給我留言
查看公開留言
查看私人留言
隨筆分類
c++面試題(8)
(rss)
c++實(shí)例(45)
(rss)
django
(rss)
POJ(3)
(rss)
Unix 命令(8)
(rss)
web開發(fā)(19)
(rss)
工程問題集(10)
(rss)
雜談(2)
(rss)
隨筆檔案
2012年2月 (1)
2011年6月 (1)
2011年3月 (1)
2010年11月 (6)
2010年10月 (28)
2010年9月 (2)
2010年7月 (5)
2010年6月 (24)
2010年5月 (31)
2010年4月 (5)
參考
besterChen
Make手冊
高性能編程參考站
我的幾個分站
CSDN站
GoogleAppEngine站
JavaEye站
北郵人站
豆瓣站
新浪站
搜索
最新評論
1.?re: 手機(jī)九點(diǎn)密碼鎖的可能性有多少種?
請說出你所想到的幾種可能
--煩惱的鴨子
2.?re: 手機(jī)九點(diǎn)密碼鎖的可能性有多少種?
我的手機(jī)密碼忘記了,各位幫幫忙
--煩惱的鴨子
3.?re: 枚舉類型和整形的轉(zhuǎn)換和比較
ww
--sss
4.?re: POJ 1062 拓?fù)渑判?/a>
評論內(nèi)容較長,點(diǎn)擊標(biāo)題查看
--npbool
5.?re: POJ 1062 拓?fù)渑判?/a>
這不是杭電上的題吧。
--Ancowei
閱讀排行榜
1.?[zz]linux sleep用法(7470)
2.?svn 提交時 文件夾 missing 問題的解決(7364)
3.?gdb調(diào)試g++ -g生成文件,list后不能看到源代碼(4834)
4.?gdb用十六進(jìn)制打印變量值(3865)
5.?枚舉類型和整形的轉(zhuǎn)換和比較(2711)
評論排行榜
1.?POJ 1062 拓?fù)渑判?4)
2.?手機(jī)九點(diǎn)密碼鎖的可能性有多少種?(2)
3.?函數(shù)指針的取地址和解引用(2)
4.?很有挑戰(zhàn)性的題目(不斷更新)(2)
5.?運(yùn)算符||的結(jié)合律是從左往右還是從右往左(2)
保持const member function,實(shí)現(xiàn)修改成員變量的3種方法
#include
<
iostream
>
#include
<
cstdlib
>
using
namespace
std;
class
Foo
{
public
:
Foo(
int
n):val(n),changed(
false
)
{}
int
getVal()
const
{
Foo
*
fp
=
const_cast
<
Foo
*>
(
this
);
fp
->
changed
=
true
;
//
changed=true;
//
error: in read-only structure
return
val;
}
;
bool
isVisit()
const
{
return
changed;}
private
:
int
val;
bool
changed;
}
;
int
main()
{
Foo f(
10
);
cout
<<
f.isVisit()
<<
endl;
cout
<<
f.getVal()
<<
endl;
cout
<<
f.isVisit()
<<
endl;
system(
"
PAUSE
"
);
return
0
;
}
一種更好的方法是使用mutable關(guān)鍵字,表示即使在const情況下,仍然能被修改
#include
<
iostream
>
#include
<
cstdlib
>
using
namespace
std;
class
Foo
{
public
:
Foo(
int
n):val(n),changed(
false
)
{}
int
getVal()
const
{
changed
=
true
;
//OK
return
val;
}
;
bool
isVisit()
const
{
return
changed;}
private
:
int
val;
mutable
bool
changed;
}
;
int
main()
{
Foo f(
10
);
cout
<<
f.isVisit()
<<
endl;
cout
<<
f.getVal()
<<
endl;
cout
<<
f.isVisit()
<<
endl;
system(
"
PAUSE
"
);
return
0
;
}
如果一個類中有很多需要被修改,可以單獨(dú)作為一個成員類
#include
<
iostream
>
#include
<
cstdlib
>
using
namespace
std;
class
Bar
{
public
:
Bar():changed(
false
),val_count(
0
)
{}
bool
changed;
int
val_count;
}
;
class
Foo
{
public
:
Foo(
int
n):val(n),b(
new
Bar())
{}
int
getVal()
const
{
b
->
changed
=
true
;
//
ok
b
->
val_count
++
;
return
val;
}
;
bool
isVisit()
const
{
return
b
->
changed;}
int
getValCount()
const
{
return
b
->
val_count;}
private
:
int
val;
Bar
*
b;
}
;
int
main()
{
Foo f(
10
);
cout
<<
f.isVisit()
<<
endl;
cout
<<
f.getValCount()
<<
endl;
cout
<<
f.getVal()
<<
endl;
cout
<<
f.isVisit()
<<
endl;
cout
<<
f.getValCount()
<<
endl;
cout
<<
f.getVal()
<<
endl;
cout
<<
f.isVisit()
<<
endl;
cout
<<
f.getValCount()
<<
endl;
system(
"
PAUSE
"
);
return
0
;
}
特別注意上例中,指針b的初始化的寫法,其實(shí),在構(gòu)造函數(shù)冒號后的member(val)相當(dāng)于member=val
posted on 2010-05-01 11:10
elprup
閱讀(392)
評論(0)
編輯
收藏
引用
所屬分類:
c++實(shí)例
只有注冊用戶
登錄
后才能發(fā)表評論。
【推薦】100%開源!大型工業(yè)跨平臺軟件C++源碼提供,建模,組態(tài)!
相關(guān)文章:
成員變量的地址
struct對齊一題
類僅有復(fù)制構(gòu)造函數(shù)時,將覆蓋默認(rèn)構(gòu)造函數(shù)和復(fù)制構(gòu)造函數(shù)
c++異常:多個catch只走一個分支
正負(fù)對模運(yùn)算的影響
運(yùn)算符重載回憶代碼
自定義析構(gòu)函數(shù)和delete &object不能共存
copy構(gòu)造函數(shù)可以訪問同類型參數(shù)的私有成員,卻不能訪問非同類的參數(shù)的私有成員
隱式的copy構(gòu)造函數(shù)
c++沉思錄 代碼集 2
網(wǎng)站導(dǎo)航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Powered by:
C++博客
Copyright © elprup
久久成人18免费网站
|
国产高潮国产高潮久久久91
|
人妻无码αv中文字幕久久琪琪布 人妻无码久久一区二区三区免费 人妻无码中文久久久久专区
|
久久国产精品-国产精品
|
欧美久久精品一级c片片
|
久久精品国产一区二区电影
|
久久久久久精品久久久久
|
久久综合丝袜日本网
|
久久国产欧美日韩精品
|
色综合久久综合网观看
|
无码人妻精品一区二区三区久久
|
亚洲天堂久久精品
|
欧美va久久久噜噜噜久久
|
久久人人爽人人爽AV片
|
国产午夜福利精品久久2021
|
久久天天躁狠狠躁夜夜躁2014
|
国产成人香蕉久久久久
|
久久精品国产亚洲沈樵
|
欧美一区二区三区久久综合
|
99久久国产亚洲综合精品
|
武侠古典久久婷婷狼人伊人
|
中文精品久久久久国产网址
|
久久精品国产亚洲av日韩
|
亚洲人成网站999久久久综合
|
国内精品久久久久久久涩爱
|
精品国产99久久久久久麻豆
|
久久亚洲国产精品五月天婷
|
久久精品国产亚洲7777
|
久久久久久久综合日本
|
久久精品免费网站网
|
国产真实乱对白精彩久久
|
久久精品国产WWW456C0M
|
久久久久99精品成人片
|
日韩va亚洲va欧美va久久
|
日日狠狠久久偷偷色综合0
|
伊人 久久 精品
|
久久精品国产亚洲av麻豆图片
|
97久久国产综合精品女不卡
|
久久精品国产亚洲av水果派
|
99精品久久久久中文字幕
|
国产精品国色综合久久
|