眾所周知,C ++的學習曲線陡峭,但是花時間學習這種語言將為您的職業帶來奇跡,并使您與其他開發人員區分開,您會更輕松地學習新語言,形成真正的解決問題的技能,并在編程的基礎上打下堅實的基礎,
C ++將幫助您養成良好的編程習慣(即清晰一致的編碼風格,在撰寫代碼時注釋代碼,并限制類內部的可見性),并且由于幾乎沒有任何抽象,因此您需要定義幾乎每個使代碼正常作業的屬性;這將迫使您真正了解自己在做什么以及程式將如何影響系統,
在這篇文章中,我們將帶您學習初學者的學習C ++的路線圖,這樣您就可以在開始旅程時感到自信,
這是我們今天要介紹的內容:
C ++簡史
C ++工具和軟體概述
C ++語言和語法簡介
讓我們開始吧!
通過實踐練習學習C ++
了解世界上最流行的編程語言之一,
C ++簡史
入門C ++的一種好方法是了解其歷史,C ++是最古老的編程語言之一,因此有許多不同的版本,對這段歷史有一定的了解,這將使您處于C ++程式員社區,并使您對其功能有所了解,
C ++編程語言是Bjarne Stroustrup于1979年在貝爾實驗室(Bell Labs)從事博士學位論文時發明的,C ++被設計為編程語言C的擴展,因此它的原始名稱為“帶有類的C”,Stroustrup的目標是為C語言增加靈活性和OOP(面向物件編程),他包括諸如類,強型別檢查,默認函式引數和基本繼承之類的功能,該名稱于1983年更改為C ++,該名稱源自++運算子,
C ++于1985年發布用于商業用途,但尚未標準化,1990年,Borland的Turbo C ++編譯器發布,其中增加了許多新功能,1998年發布了第一個C ++國際標準,稱為C ++ 98,
其中包括標準模板庫,提供了通用的編程功能和資料結構,根據反饋,委員會于2003年修訂了這些標準,并將更新語言重命名為C ++ 03,
當C ++ 11完成時,該語言在2011年進行了另一次修訂,此版本包括正則運算式支持,新庫,新的回圈語法,auto關鍵字和新的容器類等功能,從那時起,又發布了兩個修訂版本,即C ++ 14和C ++ 17,
C ++工具概述
為了正確制作C ++程式,您需要熟悉一些工具和軟體:文本編輯器,C ++編譯器,聯結器和庫,
文字編輯器
為了撰寫C ++程式,您需要一個文本編輯器,將此視為空白的Microsoft Word檔案;這是您實際撰寫代碼的地方,任何文本編輯器都可以使用,甚至計算機中內置了一些文本編輯器,但是我們建議使用專為編碼而設計的文本編輯器,有很多選擇,但是一些C ++開發人員最常用的文本編輯器是:
記事本++:開放式,輕便,簡單
Atom:免費,支持多種語言,有限的插件
Sublime Text:$ 80美元,獨特功能,簡單布局
Bluefish:輕巧,快速,多平臺,支持多種語言
編譯器
編譯器遍歷您的源代碼以完成兩項重要任務:首先,它檢查您的代碼是否符合C ++語言規則;其次,它將代碼轉換為目標檔案,一些著名的編譯器是GCC,Clang和Visual Studio C ++編譯器,我們不建議您使用Turbo C ++,因為它已經過時了,
連接器
編譯器完成作業后,目標檔案將發送到聯結器程式,該程式將完成三個任務:首先,它將所有目標檔案組合到一個程式中;其次,它將庫檔案鏈接到您的程式;第三,它暴露了任何跨檔案命名或參考問題,
標準庫
庫本質上是預包裝的代碼束,可以重復使用,C ++庫稱為C ++標準庫,它與幾乎每個C ++程式都鏈接,如果您有C ++標準庫未滿足的需求,也可以將其他庫添加到程式中,
集成開發環境(IDE)
許多C ++程式員使用IDE代替文本編輯器和編譯器,IDE是一站式C ++編程商店,它包括文本編輯器,聯結器,編譯器和庫,沒有正確或錯誤的編譯器,這一切都取決于您的需求以及哪種布局最適合您,一些流行的IDE是:
代碼::塊:免費的按需功能,用戶插件
Visual Studio代碼:開源,強大的功能,跨平臺
Eclipse:開源,簡單,跨平臺,需要安裝C ++組件
C ++語言和語法簡介
C ++是一種面向物件的編程語言,這意味著C ++程式圍繞物件和類建模,您可以通過應用函式來控制和操縱它們,OOP語言為程式提供了清晰的結構,并幫助開發人員對實際問題進行建模,
該語言旨在為您提供很多自由和力量,無論好壞,您可以完全控制系統如何利用資源,沒有像Java中那樣的自動記憶體管理;您可以在記憶體分配方式(即堆疊或堆)之間進行選擇;C ++中沒有解釋程式可以阻止您撰寫錯誤的代碼,
為了開始使用C ++,您需要熟悉語法,這將為其余的C ++旅程鋪平道路,并幫助您創建安全且無錯誤的優化程式,
讓我們看一些C ++代碼!
查看下面的代碼,您可能想知道所有這些是什么以及它的含義,歡迎使用C ++語法,
什么是語法?語法就像編程語言的語法一樣,它是您將用C ++撰寫的所有內容的基本基礎,這些是定義如何撰寫和理解C ++代碼的規則,讓我們看一些示例代碼,以熟悉語法,
語法說明
#include 是頭檔案庫,頭檔案將功能匯入程式,我們基本上是在要求程式從名為的檔案中復制內容,這代表輸入和輸出流,它定義了我們代碼中物件的標準,
using namespace std表示我們正在使用標準庫(std)中的物件和變數名,該陳述句通常縮寫為關鍵字std和運算子::,將int main ( )用于指定的主要功能,
這是C ++程式中非常重要的部分,函式本質上為代碼定義了一個動作,大括號內的所有內容{ }都會執行,
cout是一個物件(讀為-發音),在此示例中,它定義了我們的輸出:單詞字串,我們cout在第二行使用撰寫一個新物件,字符\n使文本在另一行執行,
包括兩個將\n\n創建一個空格,通過撰寫return 0,我們告訴程式什么都不會回傳,我們僅輸出文本字串,請注意,我們使用<<運算子來命名物件,半冒號的;功能就像一個句點,
從一個簡單的hello world程式開始,并繼續涵蓋諸如C ++中的條件陳述句,回圈和函式之類的核心概念,然后再討論諸如繼承,類和模板等更高級的主題,以及更多內容,
C ++術語和詞匯
現在我們已經了解了C ++代碼的樣子,讓我們定義一些我們提到的術語,并向您介紹更多術語,
關鍵詞
關鍵字是預先確定的名稱,可用于識別代碼中的內容,關鍵字是特定物件,變數或動作的識別符號,您也可以創建自己的關鍵字,以下是一些關鍵字示例:
goto
float
public
class(1)
int
變數
變數就像存盤值的容器,要宣告變數,必須type使用正確的關鍵字為其賦予一個值和一個,C ++中的所有變數都需要一個名稱或識別符號,制作識別符號時,需要遵循一些基本的語法規則,
(1)名稱區分大小寫
(2)名稱可以包含字母,數字和下劃線
(3)名稱必須以字母或下劃線開頭
(4)名稱不能包含空格或特殊字符(!,#,@等)
(5)名稱不能使用保留關鍵字
有六種不同型別的變數:
int myNum = 5; // Stores integers (whole numbers)
float myFloatNum = 5.99; // Stores decimals loating point number
double myDoubleNum = 9.98; // Floating point number
char myLetter = 'D'; // Stores single characters
bool myBoolean = true; // Stores Boolean, values with a true or false state
string myText = "Hello"; // Stores strings of text
資料型別
資料型別是您可以在程式中使用的各種資料的分類,資料型別告訴我們的變數它們可以存盤什么資料,C ++中有三種資料型別:
原始資料型別:這些是可用于宣告變數的內置資料,它們包括integer,character,boolean,floating point,double floating point,void,和wide character,
派生資料型別:這些派生自原始資料型別,它們包括function,reference,array,和pointer,
用戶定義的資料型別:這些由您(程式員)定義,
字串
字串是C ++中的物件,它們是” “引號內的一組字符,例如我們的”Hello World”字串,由于它們是物件,因此我們可以對它們執行功能,例如length ( )確定字串長度的功能,
運算子
運算子是操縱我們的資料并執行操作的符號,在C ++中,我們可以多載運算子以使它們適用于程式員定義的類,多載操作員基本上意味著一個操作員一次可以具有多個功能,C ++語言中有四種運算子:
算術運算子用于數學運算,這些作業就像代數符號一樣,
賦值運算子用于為我們的變數賦值
比較運算子比較兩個值,
邏輯運算子確定值之間的邏輯
cout << x + y // This adds x to y
int x = 10 // This defines x as 10
x <= y // Determines x is greater than or equal to y
x < 4 && x <9 // Will return true if both statements are true about x
物件
物件是我們可以操作的資料的集合,C ++中的物件具有屬性(其特征)和方法(其能力),您使用類構造物件,可以將其視為物件的藍圖,
您使用class關鍵字創建一個類,你必須定義一個訪問說明符,如public,private或protected,該public關鍵字指出類是從該類外部訪問,一旦定義了類,就可以定義屬性和物件,下面看一看類和物件的示例,
#include <iostream>
using namespace std;
class Dog //this is the name of our class
{
public:
string name = "rover"; //this is an attribute
string gender = "male";
int age = 5;
};
int main() {
Dog dogObj; //here we are making an object of Dog class
cout << "Dog name is: "<<dogObj.name<<endl; //by using . operator we can access the member of class
cout << "Dog gender is: "<<dogObj.gender<<endl; //accessing the public members of class Dog in main()
cout << "Dog age is: "<<dogObj.age<<endl;
}
功能
函式是被呼叫時運行的代碼塊,它們是程式的主力軍,用于對代碼執行操作和操縱,
它們對于代碼的可重用性非常重要,有助于更好地模塊化代碼,考慮一下您啟動的這些動作,在C ++中,有一些預定的功能,例如main ( )我們最初的示例,
要創建一個函式,必須給它起一個名字(稱為宣告)和括號( ),然后,您可以使用that隨時呼叫此函式name ( ),
有很多使用函式的方法,您還可以將回傳值附加到函式,以確定函式是否應該輸出任何資訊,該void關鍵字狀態會有不歸路,的return關鍵字,在另一方面,將要求資料型別的輸出,
條件陳述句
這些使您可以檢查是否應執行代碼塊,C ++中有四個條件陳述句:
if:如果滿足特定條件,將執行特定操作
else:如果不滿足該條件,則將執行特定操作
else if:如果不滿足第一個條件,將測驗新條件
switch:針對值串列測驗變數
回圈
回圈類似于條件陳述句,只要達到一定條件,它們就會執行代碼塊,C ++中有兩種回圈型別:
while回圈:條件回傳時,此回圈將繼續遍歷您的代碼true,
for 回圈:當您知道要回圈代碼的確切次數時使用
現在,您已經對C ++語法有了基本的了解,下面讓我們看一些常見問題解答和資源,以使您開始C ++的旅程,
恭喜!您已經了解了C ++的基礎知識!您正逐漸成為一名可聘用的C ++程式員,
自學C/C++編程難度很大,如果你想更快提升自己的編程能力和撰寫專案的水平,歡迎一起共同成長!
C語言C++編程學習交流圈子,QQ群【757874045點擊進入】微信公眾號:C語言編程學習基地
分享(原始碼、專案實戰視頻、專案筆記,基礎入門教程)
歡迎轉行和學習編程的伙伴,利用更多的資料學習成長比自己琢磨更快哦!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/256.html
標籤:C++