最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

關(guān)于C++一些特性的探究

 更新時(shí)間:2016年06月13日 10:25:11   投稿:jingxian  
下面小編就為大家?guī)硪黄P(guān)于C++一些特性的探究。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

在學(xué)習(xí)c++的過程中,也曾經(jīng)學(xué)習(xí)java,就發(fā)現(xiàn)java有類的嵌套,而看的c++的書,從來沒有哪個(gè)講c++的類可以嵌套,于是就試了一下,看是否c++可以嵌套類(編譯環(huán)境vc++6.0)

于是有了下面的代碼:

#include <iostream>
using namespace std;
class A
{
public:
  A(){
    cout<<"this a"<<endl;
  }
  ~A(){cout<<"a dead"<<endl;}
  class B
  {
  public:  
    B(){cout<<"this b"<<endl;}
    ~B(){cout<<"b dead"<<endl;}
  };
  B b;
};
class c:public A
{
};
int main(int argc, char * argv[])
{
  A a;
  return 0;
}

結(jié)果是正確的,那么看來c++是支持嵌套類的,至少vc++6.0是支持的

那么B類是否可以使用呢?于是有了下面的代碼:

#include <iostream>
using namespace std;
class A
{
public:
  A(){
    cout<<"this a"<<endl;
  }
  void getA(){cout<<"i am getA()"<<endl;}
  ~A(){cout<<"a dead"<<endl;}
  class B
  {
  public:  
    B(){cout<<"this b"<<endl;}
    ~B(){cout<<"b dead"<<endl;}
    void getB(){cout<<"i am getB()"<<endl;}
    
  };
  B b;
};
int main(int argc, char * argv[])
{
  A a;
  a.b.getB();
    A::B b;
    b.getB();
  return 0;
}

結(jié)果能成功調(diào)用getB()方法,著可以間接證明這個(gè)類正的被正確識(shí)別了,好了,那我們看是否B能繼承別的類呢?于是有了下面的代碼:

#include <iostream>
using namespace std;
class A
{
public:
  A(){
    cout<<"this a"<<endl;
  }
  void getA(){cout<<"i am getA()"<<endl;}
  ~A(){cout<<"a dead"<<endl;}
  class B:public A
  {
  public:  
    B(){cout<<"this b"<<endl;}
    ~B(){cout<<"b dead"<<endl;}
    void getB(){cout<<"i am getB()"<<endl;}
    
  };
  B b;
};

int main(int argc, char * argv[])
{
  A a;
  a.b.getB();
  A::B b;
    b.getD();
  return 0;
}

好了結(jié)果說A未定義,好吧,那我們從定義一個(gè)類,如下:

#include <iostream>
using namespace std;
class D
{
public:
  void getD()
  {
    cout<<"i am getD()"<<endl;
  }
};
class A
{
public:
  A(){
    cout<<"this a"<<endl;
  }
  void getA(){cout<<"i am getA()"<<endl;}
  ~A(){cout<<"a dead"<<endl;}
  class B:public D
  {
  public:  
    B(){cout<<"this b"<<endl;}
    ~B(){cout<<"b dead"<<endl;}
    void getB(){cout<<"i am getB()"<<endl;}
    
  };
  B b;
};
int main(int argc, char * argv[])
{
  A a;
  a.b.getB();
  a.getA();
  a.b.getD();
  A::B b;
  b.getB();
  b.getD();
  return 0;
}

結(jié)果也是正確的,看來類B是可以繼承其他類的,也有那些繼承關(guān)系。

結(jié)論:

我們分析到c++是可以進(jìn)行類嵌套的,并且可以像正常類一樣操作它,除了不能繼承嵌套它的類,目前還沒發(fā)現(xiàn)有其它特性,有興趣的可以驗(yàn)證一下匿名類是否可以在c++被允許。

以上這篇關(guān)于C++一些特性的探究就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 淺談C++日志系統(tǒng)log4cxx的使用小結(jié)詳解

    淺談C++日志系統(tǒng)log4cxx的使用小結(jié)詳解

    本篇文章是對C++日志系統(tǒng)log4cxx的使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • C語言版三子棋游戲

    C語言版三子棋游戲

    這篇文章主要為大家詳細(xì)介紹了C語言版三子棋游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • c/c++內(nèi)存分配大小實(shí)例講解

    c/c++內(nèi)存分配大小實(shí)例講解

    在本篇文章里小編給大家整理了一篇關(guān)于c/c++內(nèi)存分配大小實(shí)例講解內(nèi)容,有需要的朋友們可以跟著學(xué)習(xí)參考下。
    2021-11-11
  • C語言入門篇--定義宏#define的概述

    C語言入門篇--定義宏#define的概述

    本篇文章是C語言系列基礎(chǔ)篇,適合c語言剛?cè)腴T的朋友,本文對關(guān)于c語言的定義宏#define作了簡要的概述,希望可以幫助大家快速入門c語言的世界,更好的理解c語言
    2021-08-08
  • C++實(shí)現(xiàn)LeetCode(904.水果裝入果籃)

    C++實(shí)現(xiàn)LeetCode(904.水果裝入果籃)

    這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(904.水果裝入果籃),本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • 深入解析C++設(shè)計(jì)模式編程中解釋器模式的運(yùn)用

    深入解析C++設(shè)計(jì)模式編程中解釋器模式的運(yùn)用

    這篇文章主要介紹了C++設(shè)計(jì)模式編程中解釋器模式的運(yùn)用,解釋器模式給定一個(gè)語言,定義它的文法的一種表示,并定義一個(gè)解釋器,這個(gè)解釋器使用該表示來解釋語言中的句子,需要的朋友可以參考下
    2016-03-03
  • C++20中的span容器及用法小結(jié)

    C++20中的span容器及用法小結(jié)

    std::span 是一個(gè)非常實(shí)用的工具,可以方便地對數(shù)據(jù)進(jìn)行訪問和處理,同時(shí)也可以提高代碼的可讀性、可維護(hù)性和安全性,這篇文章主要介紹了C++20中的span容器,需要的朋友可以參考下
    2023-03-03
  • 基于Windows API分解路徑問題的詳解

    基于Windows API分解路徑問題的詳解

    本篇文章是對Windows API分解路徑進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • 如何在 C++ 中實(shí)現(xiàn)一個(gè)單例類模板

    如何在 C++ 中實(shí)現(xiàn)一個(gè)單例類模板

    這篇文章主要介紹了如何在 C++ 中實(shí)現(xiàn)一個(gè)單例類模板,幫助大家更好的理解和學(xué)習(xí)c++編程,感興趣的朋友可以了解下
    2020-10-10
  • C++詳解如何實(shí)現(xiàn)動(dòng)態(tài)數(shù)組

    C++詳解如何實(shí)現(xiàn)動(dòng)態(tài)數(shù)組

    這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)動(dòng)態(tài)數(shù)組的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-06-06

最新評論

台中市| 万载县| 历史| 甘德县| 赤水市| 紫云| 临泉县| 罗田县| 苍溪县| 灵石县| 金秀| 贵定县| 静安区| 合水县| 馆陶县| 永吉县| 莱芜市| 南充市| 定兴县| 巩义市| 勐海县| 泸水县| 交城县| 镇江市| 青阳县| 淮安市| 铅山县| 土默特右旗| 板桥市| 永嘉县| 彭州市| 海丰县| 航空| 延庆县| 柏乡县| 兴义市| 临夏市| 安多县| 苏尼特右旗| 西青区| 深水埗区|