【C++】在 function 宣告中,預設 vector 初始值

前言:

  當我們在寫程式時,很常在 function 中預設初始值,但是有時 function 傳入的值比較特殊,為物件類別,這時要如何設定初始值呢? 剛好在某一次的專案中,本人遇到此問題,困擾了我非常久,需要在 function 中預設 vector 的初始值,經過多次的嘗試與多方的資料蒐集,終於成功讓 function 預設 vector 的初始值。那我們廢話不多說,直接來看程式碼吧!

範例程式碼:

1. 引入 vector

#include <vector>

2. 宣告 Function

void TestVectorFunction (std::vector <int> _testVector = {})
{
	std::cout << "empty=" << _testVector.empty() << ", size=" << _testVector.size() << ", capacity=" << _testVector.capacity() << std::endl;
}

3-1. “不帶 vector 參數” Call Function

TestVectorFunction ();
結果:
empty=1, size=0, capacity=0

3-2. “帶vector參數” Call Function

// 宣告 vector 並 塞值進入
std::vector <int> testVector;
testVector.push_back (1);
testVector.push_back (2);

// 帶 vector Call Function
TestVectorFunction (testVector);
結果:
empty=0, size=2, capacity=2

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。

3 + thirteen =