1、c++的應用領域、意義、就業方向等等
2、面向結構(過程)程式設計(c) vs 物件導向程式設計(c++)
面向過程,是把問題分成n個過程,然後按一定順序執行
物件導向,是把這個過程看作是物件之間的相互作用關係
物件導向的三大特點:
封裝:提高**的維護性
繼承:提高**的復用性
多型:提高**的擴充套件性
維護性:當出現問題能準確定位**
復用性:功能**復用,不對**進行修改,直接復用的能力
擴充套件性:新增新的功能不修改原來的**
命名空間:為了解決合作開發時的命名衝突問題,c++ 引入了命名空間(namespace)的概念。
c語言中解決命名衝突的方法:static關鍵字
1、修飾函式的區域性變數:延長區域性變數的生命週期(延長到程式執行之後再釋放)
注意:static修飾的變數只執行一次c++中解決命名衝突的方法:命名空間(本質的實現:給每個函式和變數新增static)
1、命名空間的定義:
// 定義乙個命名空間,名字叫wang
namespace wang
中可以包含變數、函式、類、typedef、#define 等
2、命名空間的使用:
(1)使用變數、函式時要指明它們所在的命名空間。
例如:wang::a
「::」稱為域解析操作符,在c++中用來指明要使用的命名空間。
(2)除了直接使用域解析操作符,還可以採用using宣告。
例如:using wang::a;
在**的開頭用using 宣告了wang::a,它的意思是,using宣告以後的程式中如果出現了未指明命名空間的a,就可以使用wang::a。但是若要使用其他命名空間中定義的a,需要另外宣告。
(3)using宣告不僅可以針對命名空間中的乙個變數,也可以用於宣告整個命名空間。
例如:using namespace wang;
3、命名空間的注意事項:
(1)原始檔不能訪問其他原始檔的命名空間( 命名空間中存在定義)
即使放在標頭檔案裡,然後包含之後都無法訪問
(2)如果命名空間重名,相同成員名報錯,不同成員名合併
(3)如果之前輸入using namespace std;(標準庫命名空間,防止與c語言的命名產生衝突), 在輸入輸出時可以省略std::,如果之前沒有輸入過using namespace std;則在輸入輸出時,需要加上std::
推薦第二種方法
using
namespace std;
cout << a::a << endl;
std::cout << a::a << std::endl;
(4)命名空間可以巢狀定義。
輸入輸出
cin>>:標準輸入流
cout<<:標準輸出流(有緩衝區,型別是行緩衝)
cerr:輸出錯誤資訊(無緩衝區)
clog:輸出日誌資訊(無緩衝區)
endl:重新整理快取區,相當於\n的函式,再重新整理
vs編譯器認為scanf不安全:scanf不檢查使用者輸入的長度,容易產生越界
解決方法:
1 使用scanf_s()
2 加入巨集pragma warning(disable:4996)
問題一:無法輸入ch:輸入num後輸入的\n被ch讀取,導致ch的值為\n
scanf
("%d"
,&num)
;scanf
("%c"
,&ch)
;scanf
("%lf"
,&dnum)
;scanf
("%s"
,src)
;
解決方法:
scanf
("%d"
,&num)
;getchar()
;//捕獲乙個字元
scanf
("%c"
,&ch)
;scanf
("%lf"
,&dnum)
;scanf
("%s"
,src)
;
問題二:輸入字串遇到空格停止
char src[
100]
解決方法:
一.c中:gets()函式:
可以無限讀取,以回車結束讀取。
gets()函式從標準輸入(鍵盤)讀入一行資料,所謂讀取一行,就是遇到換行符就返回。gets()函式並不讀取換行符 \n ,它會吧換行符替換成空字元 \0 ,作為c語言字串結束的標誌。
二.c++中(getline函式):
string類中的getline函式簡單基本用法。
#include
#include
using
namespace std;
intmain()
C 筆記 第一講
c 學習筆記 第一講之所以稱之為 c 第乙個 為一些功能函式 結構的加強 第二個加就是 增加了物件導向的功能。例如 定義變數c 可以用時,在迴圈體裡定義,在定義 c語言不可以 一般都是全域性變數在開頭定義。register變數的區別 在c語言中不可以取位址 否則有警告錯誤,在c 可以取位址,會強制把...
Tensorflow 筆記 第一講
概 述 一 基本概念 1 什麼是人工智慧 人工智慧的概念 機器模擬人的意識和思維 重要人物 艾倫 麥席森 圖靈 alan mathison turing 人物簡介 1912 年 6 月 23 日 1954 年 6 月 7 日,英國數學家 邏輯學家,被稱為電腦科學之父,人工智慧之父。相關事件 1 19...
Tensorflow 筆記 第一講
一 基本概念 1 什麼是人工智慧 人工智慧的概念 機器模擬人的意識和思維 重要人物 艾倫 麥席森 圖靈 alan mathison turing 人物簡介 1912 年 6 月 23 日 1954 年 6 月 7 日,英國數學家 邏輯學家,被稱 為電腦科學之父,人工智慧之父。判定機器是否具有智慧型的...