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

  C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
  117 Posts :: 2 Stories :: 61 Comments :: 0 Trackbacks

常用鏈接

留言簿(8)

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

轉自:http://hi.baidu.com/%C4%CF%B7%C9%D1%E3%D1%E3%C4%CF%B7%C9/blog/item/4722d43c53868b09bba1672e.html

舉個例子:

#include<iostream> 
using namespace std; 
class cylinder 

    friend istream 
operator>>(istream& is,cylinder &cy); 
public:     
    inline 
double square() 
    
{       return length*(width+height)*2+width*height*2;    } 
    inline 
double volume() 
    
{      return length*width*height;      } 
private
    
double length; 
    
double width; 
    
double height; 
}

istream 
operator>>(istream is,cylinder &cy) 

    cout
<<"input length:"<<endl; 
    
is>>cy.length; 
    cout
<<"input width:"<<endl; 
    
is>>cy.width; 
    cout
<<"input height:"<<endl; 
    
is>>cy.height; 
    
return is
}
 
int main() 

    cylinder first; 
    cin
>>first; 
    cout
<<first.square()<<endl; 
    cout
<<first.volume()<<endl; 
    
return 0
}

這些代碼在VC6.0中不能被編譯通過:提示不能訪問私有成員,沒有這個訪問權限

改成這樣就可以了,代碼如下:(我用的這個方法,但是得把變量改成public才行)

#include<iostream> 
using std::cin; 
using std::endl; using std::cout; 
using std::ostream; 
using std::istream; 
using std::ostream; 
class cylinder 

    friend istream 
operator>>(istream& is,cylinder &cy); 
public:     
    inline 
double square() 
    
{       return length*(width+height)*2+width*height*2;    } 
    inline 
double volume() 
    
{      return length*width*height;      } 
private
    
double length; 
    
double width; 
    
double height; 
}

istream 
operator>>(istream is,cylinder &cy) 

    cout
<<"input length:"<<endl; 
    
is>>cy.length; 
    cout
<<"input width:"<<endl; 
    
is>>cy.width; 
    cout
<<"input height:"<<endl; 
    
is>>cy.height; 
    
return is
}
 
int main() 

    cylinder first; 
    cin
>>first; 
    cout
<<first.square()<<endl; 
    cout
<<first.volume()<<endl; 
    
return 0
}

原因:

這據說是VC的一個經典BUG。和namespace也有關.

只要含有using namespace std; 就會提示友員函數沒有訪問私有成員的權限。

解決方法:去掉using namespace std;換成更小的名字空間。

例如:
含有#include <string>就要加上using std::string
含有#include <fstream>就要加上using std::fstream
含有#include <iostream>就要加上using std::cin; using std::cout; using std::ostream; using std::istream; using std::endl; 等等,需要什么即可通過using聲明什么.

下面給出流浪給的解決辦法:

//方法一:
//提前聲明
class cylinder;
istream &operator>>(istream& is,cylinder &cy);

//方法二:
//不用命名空間 或者 像晨雨那樣寫
#include<iostream.h>

//方法三:

class cylinder
{
    friend istream &operator>>(istream& is,cylinder &cy)//寫在類里面
    {
        cout<<"input length:"<<endl;
        is>>cy.length;
        cout<<"input width:"<<endl;
        is>>cy.width;
        cout<<"input height:"<<endl;
        is>>cy.height;
        return is;
       
    }
..........
//方法四:打SP6補丁,貌似不好使。。。(呵呵,是貌似也沒用)

//方法五:換別的對標準C++支持好的編譯器,如DEV C++/。。。(呵呵)

本文來自CSDN博客,轉載:http://blog.csdn.net/zgjxwl/archive/2008/10/13/3067973.aspx

posted on 2010-02-15 02:56 煙皚 閱讀(1081) 評論(1)  編輯 收藏 引用 所屬分類: C++ primer plus學習筆記

Feedback

# re: VC6.0中友元函數無法訪問類私有成員的解決辦法-------VC6.0的bug 2010-09-19 22:36 吳冬亮
sp6補丁裝了就ok了

地址:
http://download.microsoft.com/download/1/9/f/19fe4660-5792-4683-99e0-8d48c22eed74/Vs6sp6.exe

就算認為自己裝過了 也請重裝遍 肯定行!  回復  更多評論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲精品少妇30p| 欧美视频日韩视频在线观看| 久久久久久伊人| 欧美一区二区三区视频免费播放 | 欧美与黑人午夜性猛交久久久| 亚洲图片在线观看| 亚洲欧美日韩国产成人| 欧美在线一区二区| 久久人人爽人人爽爽久久| 亚洲电影免费在线观看| 亚洲精品偷拍| 午夜亚洲福利| 噜噜噜久久亚洲精品国产品小说| 另类酷文…触手系列精品集v1小说| 欧美成人免费在线视频| 欧美性猛交视频| 精品成人乱色一区二区| 99在线观看免费视频精品观看| 午夜精品久久久久久久99水蜜桃| 欧美精品一区二| 国产精品成人在线| 国产在线播精品第三| 亚洲美洲欧洲综合国产一区| 亚洲欧美电影院| 欧美韩日视频| 亚洲欧美激情在线视频| 久久久久久91香蕉国产| 欧美三级网址| 亚洲人www| 久久久xxx| 亚洲少妇诱惑| 欧美日韩国产黄| 精品999在线观看| 午夜精品福利一区二区蜜股av| 欧美www视频| 午夜精品在线视频| 欧美三级电影网| 亚洲精品在线免费| 蜜臀91精品一区二区三区| 这里是久久伊人| 欧美精选午夜久久久乱码6080| 国产亚洲欧美日韩美女| 亚洲欧美日韩国产精品| 亚洲激情偷拍| 久久久久久网站| 一区二区三区在线视频播放 | 亚洲一区国产精品| 看片网站欧美日韩| 一区二区三区在线观看国产| 午夜精品久久久久99热蜜桃导演| 亚洲国产mv| 久久综合一区二区| 在线精品亚洲| 久久嫩草精品久久久精品一| 亚洲在线第一页| 国产精品专区一| 欧美尤物一区| 亚洲欧美国产视频| 国产精品影视天天线| 亚洲中字黄色| 亚洲一区二区高清视频| 国产精品一区二区三区乱码| 亚洲网在线观看| 亚洲午夜在线观看| 国产丝袜美腿一区二区三区| 欧美一区二区私人影院日本 | 亚洲欧美日本伦理| 亚洲视频香蕉人妖| 国产精品免费久久久久久| 亚洲免费在线视频一区 二区| 9国产精品视频| 国产精品伊人日日| 久久久综合免费视频| 久久精品视频免费观看| 亚洲国产美女| 亚洲欧美综合v| 亚洲欧美一区二区原创| 国产亚洲欧洲997久久综合| 欧美www视频| 欧美日韩专区在线| 久久久91精品国产一区二区三区| 久久久久久久久久久久久久一区| 亚洲国产欧美在线人成| 亚洲欧洲精品一区二区精品久久久| 欧美日韩一区二区免费在线观看| 亚洲欧美美女| 久久综合激情| 亚洲欧美电影院| 久久久免费av| 亚洲欧美福利一区二区| 久久天堂av综合合色| 亚洲一区二区黄色| 久久天堂国产精品| 午夜精品久久| 免费在线欧美视频| 欧美在线电影| 欧美屁股在线| 美女国产一区| 国产精品一区二区黑丝| 亚洲国产精品va在线观看黑人| 欧美体内she精视频| 欧美mv日韩mv国产网站| 国产精品视频一二| 亚洲欧洲视频在线| 精品电影一区| 亚洲欧美一区二区三区久久| 亚洲美女尤物影院| 久久精品五月| 翔田千里一区二区| 欧美日本一道本在线视频| 噜噜爱69成人精品| 国产欧美一级| 亚洲一区二区在| 亚洲手机视频| 欧美好吊妞视频| 蜜桃久久精品乱码一区二区| 国产精品美女久久久久久2018| 欧美99久久| 黄色成人免费观看| 亚洲欧美日韩成人| 午夜精品区一区二区三| 欧美网站在线| 99国产精品国产精品久久| 最新热久久免费视频| 久久精品一区二区三区中文字幕| 亚洲免费在线观看视频| 欧美日韩视频在线| 亚洲美女91| 制服丝袜亚洲播放| 欧美韩日一区| 亚洲人成在线播放网站岛国| 亚洲国内精品在线| 欧美99在线视频观看| 看欧美日韩国产| 在线欧美不卡| 欧美成人综合在线| 亚洲黄色av| 亚洲性人人天天夜夜摸| 欧美视频二区| 亚洲欧美日本精品| 久久久噜噜噜久噜久久| 极品中文字幕一区| 免费不卡在线观看| 亚洲一区二区三区国产| 欧美日韩国产在线播放网站| 亚洲日本成人网| 中文无字幕一区二区三区| 欧美午夜在线视频| 亚洲欧美乱综合| 久久只精品国产| 亚洲精品1区2区| 欧美日韩在线视频首页| 亚洲免费在线播放| 久色婷婷小香蕉久久| 亚洲国产裸拍裸体视频在线观看乱了| 另类酷文…触手系列精品集v1小说| 欧美激情亚洲激情| 亚洲无吗在线| 韩国精品主播一区二区在线观看| 久久久综合视频| 亚洲日韩中文字幕在线播放| 亚洲性色视频| 精品福利电影| 欧美日韩日本国产亚洲在线| 亚洲少妇诱惑| 久久免费精品视频| 亚洲精选视频免费看| 国产精品久久福利| 久久久久久91香蕉国产| 9国产精品视频| 久久综合亚州| 亚洲一区二区少妇| 亚洲电影在线观看| 国产精品久久久一本精品| 久久青青草原一区二区| 99视频精品免费观看| 久久久精品国产一区二区三区| 亚洲精品免费网站| 国产手机视频一区二区| 欧美日韩不卡合集视频| 久久九九热re6这里有精品| 亚洲美女精品久久| 久久亚洲私人国产精品va| 亚洲午夜激情免费视频| 亚洲风情在线资源站| 国产精品一区在线观看| 欧美成人激情在线| 久久成人一区二区| 亚洲天堂av综合网| 亚洲久久在线| 欧美成人高清| 久久一综合视频| 久久精品国产91精品亚洲| 亚洲精品网站在线播放gif| 国产视频在线观看一区二区| 欧美三级电影网| 欧美日韩免费在线| 欧美久久99| 欧美sm极限捆绑bd| 噜噜噜在线观看免费视频日韩|