国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

C++基礎(chǔ)知識 (命名空間、輸入輸出、函數(shù)的缺省參數(shù)、函數(shù)重載)

這篇具有很好參考價值的文章主要介紹了C++基礎(chǔ)知識 (命名空間、輸入輸出、函數(shù)的缺省參數(shù)、函數(shù)重載)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

?? 第一個 c++ 代碼

?? 例1:

#include <iostream>
using namespace std;

int main() {

	cout << "hello world" << endl;

	return 0;
}
  • #include <iostream> 標準輸入輸出
  • stdc++ 標準庫的命名空間,將標準庫的定義實現(xiàn)都放到這個命名空間中
  • using namespace std 展開 std 里的內(nèi)容
  • cout ? c 代表的是 console 控制臺的意思,out 有輸出的意思
  • << 流運算符 流插入
  • endl 等價于 '\n'

?? 命名空間

c++ 中,變量、函數(shù)和類的名稱存在于全局作用域中,可能會導(dǎo)致沖突。比如:在 #include <stdlib.h> 中存在一個 rand 函數(shù),當你再定義一個全局的 rand 變量這時編譯器就會報錯。而使用命名空間將變量、類型、函數(shù)放在一個域中以放命名沖突,使用 namespace 關(guān)鍵字來創(chuàng)建命名空間。

?? 命名空間的定義和訪問

語法: namespace name {}

?? 例2:

// 定義命名空間
namespace mySpace {
	char name[10] = "sunwukong";
	int age = 18;
	char gender = 'male';

	int add(int num1, int num2) {
		return num1 + num2;
	}

	struct Node {
		int val;
		struct Node* next;
	};
}

// 命名空間的訪問
int main() {

	struct mySpace::Node node;
	node.val = 10;

	cout << mySpace::age << endl;

	cout << mySpace::add(10, 20) << endl;

	return 0;
}

ps: 若是變量或者函數(shù)直接使用命名空間的 name::來訪問即可。但是如果是結(jié)構(gòu)類型 mySpace::struct Node 這樣的寫法是 error 的。要在 struct 后面寫命名空間 struct mySpace::Node。

?? 命名空間可以嵌套

namespace N1 {
	int a;
	int b;
	namespace N2 {
		int c;
		int d;
	}
}

ps: 還有一種情況,若在許多文件中存在多個相同的命名空間,編譯器最后會合成為同一個命名空間。

?? 例3:

#include <iostream>
using namespace std;

int num = 10;

int main() {

	int num = 1;

	cout << num << endl;

	return 0;
}

ps: 以上代碼會有局部優(yōu)先的問題,所以最終 num 訪問結(jié)果是 1,但是也可以訪問到全局的 num 使用 :: 默認代表訪問全局域 ,例如:cout << ::num << endl;。:: 前面加上命名空間的名稱代表訪問命名空間的某個對象。

?? 命名空間的使用

  1. name::a 加命名空間名稱及作用域限定符
  2. using name::a 使用 using 將命名空間中某個成員引入
  3. using namespace name 使用 using namespace 引入命名空間

?? c++ 輸入輸出

?? 例4:

#include <iostream>
using namespace std;

int main() {

	int num = 0;
	double score = 0.0;

	cin >> num >> score;
	cout << num <<" " << score << endl;

	return 0;
}
  • cin、cout ? c 代表 console 有控制臺的意思 in 有內(nèi)的意思 out 有外的意思,cin 標準輸入對象(鍵盤)、cout 標準輸出對象(控制臺),必須包含 <iostream> 以及命名空間 std
  • coutcin 是全局的的流對象,它們都包含在 <iostream> 頭文件中
  • << 是留插入運算符、>> 是流提取運算符
  • c++輸入輸出可以自動識別類型

?? 函數(shù)的缺省參數(shù)

缺省參數(shù)是聲明或者定義函數(shù)時為函數(shù)的參數(shù)指定一個默認值。在調(diào)用函數(shù)時,如果沒有指定實參則采用默認值(缺省參數(shù)),否則使用指定實參。

?? 例5:

#include <iostream>
using namespace std;

void Func(int num = 10) {
	cout << num << endl;
}

int main() {

	Func();		// 10
	Func(20);	// 20

	return 0;
}
  • 全缺省參數(shù)
#include <iostream>
using namespace std;

void Func(int a = 10, int b = 20, int c = 30) {
	cout << a << endl;
	cout << b << endl;
	cout << c << endl << endl;
}

int main() {

	Func();
	Func(100);
	Func(100 , 200);
	Func(100 , 200 , 300);

	return 0;
}

C++基礎(chǔ)知識 (命名空間、輸入輸出、函數(shù)的缺省參數(shù)、函數(shù)重載),c++,c++,學(xué)習(xí)

  • 半缺省參數(shù)
void Func(int a , int b = 20, int c = 30) {
	cout << a << endl;
	cout << b << endl;
	cout << c << endl << endl;
}

ps: 半缺省參數(shù)必須從右向左依次來給出,不可以隔著給。缺省參數(shù)不能在函數(shù)聲明和定義中同時出現(xiàn)(一般在聲明中出現(xiàn))。


?? 函數(shù)重載

c++ 允許在同一個作用域中聲明功能類似的同名函數(shù),這些同名函數(shù)的形參類型(參數(shù)個數(shù)、類型、順序)不同, 常用來處理功能類似但數(shù)據(jù)類型不同的問題。文章來源地址http://www.zghlxwxcb.cn/news/detail-615846.html

// 類型不同
int add(int a, int b) {

	return a + b;
}

double add(double a, double b) {

	return a + b;
}

// 順序不同
void f(int a, char b) {
	cout << "void f(int a, char b)" << endl;
}

void f(char a , int b) {
	cout << "void f(char b , int a)" << endl;
}

// 個數(shù)不同
void f() {
	cout << "void f()" << endl;
}
	
void f(int a) {
	cout << "void f(int a)" << endl;
}

到了這里,關(guān)于C++基礎(chǔ)知識 (命名空間、輸入輸出、函數(shù)的缺省參數(shù)、函數(shù)重載)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • [C++] C++入門第一篇 -- 命名空間,輸入輸出,缺省函數(shù),函數(shù)重載底層原理

    [C++] C++入門第一篇 -- 命名空間,輸入輸出,缺省函數(shù),函數(shù)重載底層原理

    ? 目錄 1、? 2、命名空間 2.1 命名空間的定義 2.2 命名空間的使用方式 2.2.1 加命名空間名稱及作用域限定符 2.2.2 使用using將命名空間中某個成員引入 2.2.3 使用using namespace 命名空間名稱引入 3、C++輸入與輸出 4、缺省參數(shù) 4.1 缺省參數(shù)的概念 4.2 缺省參數(shù)分類 4.2.1 全缺省參

    2024年02月15日
    瀏覽(20)
  • 【C++那些事兒】初識C++ 命名空間,C++中的輸入輸出以及缺省函數(shù)

    【C++那些事兒】初識C++ 命名空間,C++中的輸入輸出以及缺省函數(shù)

    君兮_的個人主頁 即使走的再遠,也勿忘啟程時的初心 C/C++ 游戲開發(fā) Hello,米娜桑們,這里是君兮_,數(shù)據(jù)結(jié)構(gòu)和算法初階更新完畢,我們繼續(xù)來擴充我們的知識面,今天我們從認識C++開始來帶大家學(xué)習(xí)C++,我之前看過一套書叫做《明朝那些事兒》,把本來枯燥的歷史講的生動

    2024年02月08日
    瀏覽(35)
  • 【C++深入淺出】初識C++上篇(關(guān)鍵字,命名空間,輸入輸出,缺省參數(shù),函數(shù)重載)

    【C++深入淺出】初識C++上篇(關(guān)鍵字,命名空間,輸入輸出,缺省參數(shù),函數(shù)重載)

    ? ?? 目錄 一. 前言 二. 什么是C++ 三. C++初探 四. 命名空間 4.1 為什么要引入命名空間 4.2 命名空間的定義 4.3 命名空間使用 五. C++的輸入輸出 六. 缺省參數(shù) 6.1 缺省參數(shù)的概念 6.2 缺省參數(shù)的分類 七. 函數(shù)重載? 7.1 函數(shù)重載的概念 7.2 函數(shù)重載的條件 7.3 C++支持函數(shù)重載

    2024年02月13日
    瀏覽(1105)
  • C++ 基礎(chǔ)知識筆記(一)變量和數(shù)據(jù)的輸入輸出

    C++的基礎(chǔ)知識包括如下內(nèi)容: 變量和數(shù)據(jù)的輸入輸出 數(shù)據(jù)類型和運算符 比較運算符和布爾類型 if-else 選擇語句、多分支語句 switch 分支語句 邏輯運算符 for 循環(huán) for 循環(huán)進階 數(shù)組 數(shù)組進階 while 循環(huán) 格式化輸入輸出 浮點數(shù)和數(shù)據(jù)類型轉(zhuǎn)換 字符串和字符數(shù)組 string 類型的字符

    2024年02月09日
    瀏覽(21)
  • C++入門:命名空間與輸入輸出

    目錄 1.命名空間 1.1 命名空間的定義 1.2 命名空間的使用 1.3 標準命名空間 std 2.C++輸入輸出 我們在初學(xué)C++時,經(jīng)常會在代碼開頭看到這樣的一行代碼: 這行代碼到底什么意思呢?我們學(xué)完命名空間就可以理解了。 在C/C++中,變量、函數(shù)和后面要學(xué)到的類都是大量存在的,這些

    2024年02月11日
    瀏覽(29)
  • 【C++入門系列】——命名空間和輸入輸出

    【C++入門系列】——命名空間和輸入輸出

    ??lovewold少個r博客主頁 ? ? ?? 本文重點 : c++入門第一個程序和基本知識講解 ?? 每日一言 :忙,不會死,人只有越忙越活,流水不腐,戶樞不蠹。 ?作者主頁 前言 談?wù)勎覀€人對語言和職業(yè)的看法 C++的歷史發(fā)展 C++第一個程序 命名空間 定義命名空間 使用此命名空間 命

    2024年02月05日
    瀏覽(31)
  • 【C++起飛之路】初級——命名空間、輸入輸出流

    【C++起飛之路】初級——命名空間、輸入輸出流

    為了解決合作開發(fā)時的命名沖突問題,C++ 引入了命名空間(Namespace) 當我們編寫代碼時,可能會產(chǎn)生一些命名沖突,為了解決這一沖突引出了命名空間的概念 命名沖突的產(chǎn)生主要包括兩個方面原因: 1、與庫函數(shù)名沖突 2、工程中的沖突(比如多人共同完成一個項目時,寫了

    2024年02月03日
    瀏覽(22)
  • 【C++雜貨鋪】C++介紹、命名空間、輸入輸出

    【C++雜貨鋪】C++介紹、命名空間、輸入輸出

    ?C語言是 結(jié)構(gòu)化 和 模塊化 的語言,適合處理 較小規(guī)模 的程序。對于復(fù)雜的問題,規(guī)模較大的程序,需要高度的抽象和建模時,C語言則不合適。為了解決軟件危機,20世紀80年代,計算機界提出了 OOP (object oriented programming: 面向?qū)ο?)思想,支持面向?qū)ο蟮某绦蛟O(shè)計語言應(yīng)

    2024年02月16日
    瀏覽(31)
  • 【C++初階】C++入門——C++介紹、命名空間、輸入輸出

    【C++初階】C++入門——C++介紹、命名空間、輸入輸出

    ?C語言是 結(jié)構(gòu)化 和 模塊化 的語言,適合處理 較小規(guī)模 的程序。對于復(fù)雜的問題,規(guī)模較大的程序,需要高度的抽象和建模時,C語言則不合適。為了解決軟件危機,20世紀80年代,計算機界提出了 OOP (object oriented programming: 面向?qū)ο?)思想,支持面向?qū)ο蟮某绦蛟O(shè)計語言應(yīng)

    2024年02月11日
    瀏覽(16)
  • 【C++】:C++關(guān)鍵字,命名空間,輸入&輸出,缺省參數(shù)

    【C++】:C++關(guān)鍵字,命名空間,輸入&輸出,缺省參數(shù)

    C++總計63個 ,C語言32個。 ps:下面我們只是看一下C++有多少,不對進行具體的講解。在以后的學(xué)習(xí)中會會了解的更深。 在C語言的語法中,有時候會遇到這樣的情況: 我們的本意是創(chuàng)建一個全局的 rand 變量,再進行輸出。那為什么會報錯呢? 原因:

    2024年04月27日
    瀏覽(28)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包