47,C++(01)

/*
達內學習 C++ day45 2013-11-5
*/
C++的發展
80 貝爾實驗室  本賈尼
1983 命名C++
1987 gnu 推出C++ 的標準
1998   ISO   C++98
2003   ISO   C++03
2011   ISO   C++0x

C++ 和 C語言的聯繫和區別
C++ 包含整個C C++是建立在C語言基礎上
C++ 是強類型語言  比C對類型檢查更加嚴格
C++ 語言比C更加豐富
1,C++支持面向對象
    C++宏觀上面向對象,圍微觀上面向過程
2,C++支持運算符重載
3,C++支持異常處理
4,C++支持泛型編程

頭文件位置  usr/include/c++/4.6
c++標準頭文件沒有.h
gcc -lstdc++可以找到c++的庫
g++ -E -S -O -o -I -L -l -g -std

使用std空間下的相關數據
std::cout std::cin std::endl
 前面加名稱空間名 是最根本的使用方式

/* 使用聲明的方式 */
using std::cout;
using std::cin;

/* 使用指令的方式 */
using namespace std;

C++導入標準C的頭文件,去掉.h,前面加上c
uc的直接導入

命名空間:把一組相關的數據放入一個邏輯結構中,統一管理。
系統提供一個叫std的命名空間
2,如何定義命名空間
 namespace  空間名
{
 數據;
}
3, 使用命名空間
 a,通過在空盡數據前  加 空間名::數據
 b,通過聲明數據的方式
    using  空間名::數據;
 c,使用 using namespace 指令
4,特殊的命名空間 匿名命名空間
  namespace{}
 ::數據; //調用匿名空間
5,命名空間的嵌套
namespace ns1{
  int a = 1;
  namespace ns2
  { 
 int b = 2;
    namespace ns3
       {
          int a=3;
             void show()
                  {
                    cout<<a<<endl;
     }
       }
  }
}
int main()
{
 ns1::ns2::ns3::show();
   using ns1::a;
    cout<<a<<endl;
     using namespace ns1::ns2;
      ns3::show();
}

C++中的結構 聯合  枚舉
C++中的結構
類型名字 直接就是結構體名字 定義變量不需要使用struct關鍵字
C++的結構體中可以定義函數
C++的結構體  如果沒有任何字段 大小是1,C語言中是0

2,c++中的聯合。
 union
     {
       int d;
      char data[4];
    };
允許使用匿名聯合
3,C++中的枚舉
類型不在使用關鍵字 enum
C++中的枚舉是一個特定的類型, 類型檢查比C嚴格

C++中的bool類型
bool類型是一種特定的類型  本質是整數
真就是1  假就是0
出現以下情況表達是false
0.0, 0,'\0',NULL,false

C++中函數
1,無參代表 沒有任何參數   c語言中無參代表任意個參數
2,C++函數調用前  必須顯示聲明  不在支持隱式聲明
3,不設計返回值  不再默認返回int ,main函數除外

 

發佈了72 篇原創文章 · 獲贊 6 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章