cpp入門基礎知識



1.命名空間域是隨標準C++而引入的。它相當於一個更加靈活的文件域(全局域),可以用花括號把文件的一部分括起來,並以關鍵字namespace開頭給它起一個名字:


namespace name1

{

    int a = 0;

}

namespace name2

{

    int a = 1;

}

    name1::a = 3

   name2::a = 4;

2.名字空間域解決全局命名衝突的問題.

標準C++庫中的所有組件都是在一個被稱爲std的名字空間中聲明和定義的。在採用標準C++的平臺上使用標準C++庫中的組件,只要寫一個using指示符:

using namespace std;就可以直接使用標準C++庫中的所有成員。

或者 std::成員 的方式也可以使用C++庫裏的成員。

#include<iostream>using namespace std;//std是C++標準庫的名字空間

int main ()

{

    std::cout<<"hello world"<<std::endl; return 0;

}

3.C++基本的輸入輸出流

cout是標準輸出流對象,<< 是輸出操作符;

cin是標準輸入流對象,>>是輸入操作符;

endl是換行操作符;

他們都屬於C++標準庫,所以都在std的名字空間裏面。

#include<iostream>

using namespace std;

int main ()

{

   int i1 = 1;

   double d1 = 2.22;

   cout<<"c++ type:" <<"int->"<< i1<<" double->"<< d1<<endl ;

   cout<<"please input int and double:" ;

   cin>>i1 >>d1;

   cout<<"c++ type:" <<"int->"<< i1<<" double->"<< d1<<endl ;

4.重載(C++爲什麼支持重載?)

在同一作用域類,一組函數的函數名相同,參數列表不同(個數不同/類型不同),返回值可同可不同

void fun(int a,int,b);

void fun(char a, char b);

void fun (int a,int b, int c);

5.C++缺省參數(全缺或者半缺,半缺缺省右邊)

// 全缺省參數

int Add1 (int a = 0, int b = 0)

{

return a + b;

}

// 半缺省參數

int Add2 (int a, int b = 0)

{

   return a + b;

}

void Test ()

{

    Add1();

    Add1(1);

    Add1(1,1);

    Add2(2);

    Add2(2,2);

}

6.指針和引用(概念、使用方法、做參數、做返回值的作用,指針和引用的區別)

引用只是變量的別名,就像人的官名和小名,可以有多個。

1) 引用只能在定義時初始化一次,之後不能改變指向其它變量(從一而忠);指針變量的值可變。

2) 引用必須指向有效的變量,指針可以爲空。

3) sizeof指針對象和引用對象的意不義一樣,sizeof引用得到的變量的大小,指針指是對象地址的大小。

4} 指針和引用自增(++)自減(--)意義不一樣。

5) 相對而言,引用比指針更安全。

總結一下:指針比引用更靈活,但是也更危險。使用時一定要注意檢查指針是否爲空,free之後指針最好置0,否則可能存在野指針問題。











發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章