青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 23,  comments - 94,  trackbacks - 0

今天實訓的某同學給我看了一段簡單的代碼,蠻有意思
數組不是越界了么?為什么結果還是正確的呢?

#include <iostream>
#include <cstdlib>

using namespace std;

class S
{
public:
 void a()
 {
  cout<<sum<<endl;
 }

private:
 static int sum;
};

int S::sum = 0;

int main()
{
 S sa[10];

 sa[100].a();

 system("pause");
 return 0;
}

代碼差不多就是這樣,一個類的數組,越界訪問一個普通成員函數
這個成員函數只訪問了靜態成員變量
輸出的結果是0,同學的問題是,sa[100]不是越界了么?為什么運行的時候不出錯呢?

這個問題是一個初學者提出來的~ 不過要解釋清楚還真得有些深度~

我同學說
首先,通過對象調用成員函數,就必須在這個對象存在的前提下吧
那么,sa[100]根本不存在啊,為什么這個調用還合法呢?

開始我也感覺比較詫異,覺得我同學說的沒錯啊~
然后再仔細想了一想做了如下的解釋

普通成員函數的調用,必須得到一個this指針的參數
這就是必須由對象或者由對象的指針或者引用來調用的原因

那么一個類中的普通成員函數,可以解釋為這樣的形式
以上面的S為例子

S_a(S* pthis)
{
    ....
}

那么之前的 sa[100].a();
就相當于調用的是

S_a( sa + 100*sizeof(S) );

如此一來就清晰很多了

這個函數只訪問了類中的靜態成員,而類中的靜態成員又是存儲在靜態區
那么就是一個全局變量
那之前的程序看起來其實就像是這樣

int S_sum = 0;

void S_a(S* pthis)
{
    cout<<S_sum<<endl;
}

這個函數的參數隨便傳入的是什么值,都無所謂了
這里的sa[100].a()調用實際上可以解釋為

(S)(*(sa+100*sizeof(S))).a();

->

S_a( sa + 100*sizeof(S) );

所以,編譯,運行的結果都是正確的~

希望我給我的同學的解釋也是正確的~

posted on 2009-08-20 22:10 Charlie 侯杰 閱讀(3229) 評論(24)  編輯 收藏 引用

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


by Charlie
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            一区二区不卡在线视频 午夜欧美不卡在 | 欧美日韩免费观看一区=区三区| 亚洲男人影院| 亚洲永久在线观看| 亚洲欧美日韩一区二区三区在线观看| 一区二区三区高清不卡| 亚洲欧美国产77777| 欧美中文字幕在线观看| 久久人人看视频| 欧美精品乱人伦久久久久久 | 日韩视频一区二区三区在线播放| 亚洲欧洲免费视频| 欧美肥婆在线| 一区二区三区蜜桃网| 99热在线精品观看| 亚洲欧美日韩国产中文在线| 午夜精品一区二区三区在线| 久久精品一区二区三区四区| 免费毛片一区二区三区久久久| 欧美日韩p片| 国产日韩精品在线观看| 亚洲高清视频一区| 亚洲免费在线播放| 美女网站久久| 国产精品99久久不卡二区| 欧美在线观看日本一区| 欧美jjzz| 国内偷自视频区视频综合| 亚洲日本成人| 欧美在线三级| 亚洲免费观看在线观看| 久久久久国产精品一区二区| 欧美日韩色一区| 亚洲国产精品久久久久秋霞不卡 | 老司机亚洲精品| 99精品福利视频| 美女主播视频一区| 国产午夜精品全部视频播放 | 久久久久久香蕉网| 日韩一区二区精品| 久久夜色精品| 国产亚洲欧美日韩美女| 亚洲午夜激情| 91久久在线| 久久综合久久88| 国产亚洲成av人在线观看导航 | 亚洲欧美在线播放| 欧美连裤袜在线视频| 亚洲国产成人精品视频| 性做久久久久久久免费看| 亚洲精品在线电影| 欧美成人亚洲成人日韩成人| 国产自产v一区二区三区c| 欧美亚洲一区二区在线| 亚洲另类自拍| 欧美日韩国产va另类| 亚洲精品久久久久久久久久久久久 | 国产日韩欧美亚洲| 午夜精品久久99蜜桃的功能介绍| 日韩视频在线观看一区二区| 欧美成人一区二区| 亚洲精品一区二区三区99| 亚洲成色www久久网站| 欧美国产免费| 久久精品一区四区| 国产精品色午夜在线观看| 午夜精品福利在线| 浪潮色综合久久天堂| 亚洲欧美国产日韩中文字幕| 欧美一区二区三区成人| 国产三级欧美三级日产三级99| 老司机久久99久久精品播放免费| 欧美日韩免费一区| 亚洲国产精品成人| 国产一区视频观看| 亚洲一区二区三区四区五区黄| 狠狠色2019综合网| 亚洲已满18点击进入久久| 国产视频在线观看一区| 亚洲成色777777女色窝| 夜夜夜久久久| 一区二区三区国产在线观看| 久久er99精品| 久久久国产一区二区| 国产精品欧美一区二区三区奶水| 亚洲欧洲美洲综合色网| 91久久久国产精品| 男人插女人欧美| 亚洲麻豆av| 亚洲综合色网站| 国产深夜精品| 嫩模写真一区二区三区三州| 欧美阿v一级看视频| 91久久国产综合久久91精品网站| 噜噜噜在线观看免费视频日韩| 美女网站久久| 亚洲综合社区| 亚洲男女自偷自拍| 久久久精彩视频| 亚洲精品乱码视频| 国产精品精品视频| 久久久久五月天| 一本色道88久久加勒比精品| 久久国产精品久久久| 亚洲国产精品va在线看黑人动漫 | 在线国产欧美| 欧美日韩精品免费在线观看视频| 这里只有精品在线播放| 久久亚洲欧美| 欧美一区二区视频97| 一本高清dvd不卡在线观看| 国产综合婷婷| 国产欧美一区二区精品秋霞影院| 蜜臀av一级做a爰片久久| 亚洲欧美日韩区| 亚洲主播在线| 欧美激情视频一区二区三区免费 | 欧美一区日本一区韩国一区| 亚洲国产精品国自产拍av秋霞| 性欧美xxxx视频在线观看| 中文国产亚洲喷潮| 亚洲私人影院| 午夜精品久久久| 久久偷看各类wc女厕嘘嘘偷窃| 欧美主播一区二区三区美女 久久精品人 | 久久久欧美一区二区| 性做久久久久久久免费看| 亚洲视频一区| 一本色道久久综合狠狠躁篇的优点 | 日韩视频在线一区二区三区| 亚洲第一天堂无码专区| 亚洲精品国产拍免费91在线| 亚洲第一在线视频| 亚洲高清激情| 亚洲少妇自拍| 欧美极品在线视频| 国产婷婷成人久久av免费高清| 在线成人激情| 欧美主播一区二区三区美女 久久精品人 | 国产午夜精品久久久久久久| 亚洲国产精品久久91精品| 中文精品一区二区三区| 久久精品一区| 亚洲裸体视频| 欧美成人黄色小视频| 免费在线一区二区| 一本色道久久综合一区| 久久久激情视频| 国产精品夜夜夜| 亚洲视频网在线直播| 久久久免费精品视频| 中文亚洲字幕| 国产精品国色综合久久| 亚洲国产精品日韩| 男人的天堂成人在线| 亚洲男同1069视频| 国产精品激情电影| 亚洲视频图片小说| 亚洲男人影院| 一本色道久久综合狠狠躁的推荐| 欧美一级欧美一级在线播放| 国产精品mm| 欧美一区免费视频| 欧美一区二区三区四区在线观看地址| 国产精品手机视频| 欧美在线你懂的| 免费观看30秒视频久久| 亚洲第一在线视频| 亚洲黄色尤物视频| 欧美日本精品一区二区三区| 亚洲一区二区av电影| 亚洲欧美中文日韩v在线观看| 国产精品天美传媒入口| 久久精品欧美日韩| 欧美国产亚洲视频| 午夜精品亚洲一区二区三区嫩草| 一区二区三区欧美在线观看| 欧美性猛交视频| 狼狼综合久久久久综合网| 蘑菇福利视频一区播放| 久久大逼视频| 欧美日韩国产一区二区三区| 亚洲欧美精品在线| 嫩模写真一区二区三区三州| 性色一区二区三区| 欧美色偷偷大香| 欧美国产1区2区| 国产一区二区在线观看免费播放| 亚洲国产成人av好男人在线观看| 国产精品九色蝌蚪自拍| 亚洲激情综合| 欧美中文字幕在线播放| 国产精品99久久久久久白浆小说| 亚洲欧美成人网| 久久精品夜夜夜夜久久| 性欧美大战久久久久久久免费观看 | 日韩午夜av在线| 久久久久久久一区| 久热精品视频| 精品91在线|