C++??δ????????麯??
???????????? ???????[ 2013/3/14 10:22:06 ] ????????
??????????????????????麯??????????????滻????????????? ???ū??????????麯?????????????????????????????????????????????????
class CFoo {
private:
int val;
public:
int GetVal() { return val; }
int SetVal(int v) { return val=v; }
};
?????????????????д???
CFoo x;
x.SetVal(17);
int y = x.GetVal();
?????????????????????????????????????????
CFoo x;
x.val = 17;
int y = x.val;
?????????????????????val?????б??????????????????????ú??????????????????????????
?????麯???ж???????ζ????????????????????????????????????????? GetVal ????????麯???????????е?????????????????? CFoo2??
class CFoo2 : public CFoo {
public:
// virtual in base class too!
virtual int CFoo2::GetVal() { return someOtherVal; }
};
??????? pFoo????? CFoo ?? CFoo2 ???????????? pFoo ???????? CFoo ?? CFoo2????????? pFoo->GetVal ??????ó????
???????????????????????????????????????????????????????????????????????????????
????????????????????????ù???? inline???磺
inline CFoo::GetVal() { return val; }
?????????????????????б?д?????壬?????? CFoo2::GetVal ???????????????麯?????????????????У??磺
class CFoo {
public:
virtual int GetVal() { return val; }
};
?????????????????????? GetVal ???????????????????????????????????????????????????
?????????????????????????????????????飬?????????????á???????????? CFoo ????????pFoo->GetVal ???????????????????????????£?????????? GetVal ??????????????????????????vtable?????????????????????????ζ????????????????????????????????
CFoo x;
x.SetVal(17)
int y = x.GetVal()
??????
![](/images/ad-banner/ad-banner.png)
???·???
??????????????????
2023/3/23 14:23:39???д?ò??????????
2023/3/22 16:17:39????????????????????Щ??
2022/6/14 16:14:27??????????????????????????
2021/10/18 15:37:44???????????????
2021/9/17 15:19:29???·???????·
2021/9/14 15:42:25?????????????
2021/5/28 17:25:47??????APP??????????
2021/5/8 17:01:11