C++ ทูเปิล

C Thu Peil



การทำงานกับภาษาการเขียนโปรแกรมใดๆ จำเป็นต้องใช้ tuples, รายการ, อาร์เรย์ และอื่นๆ อาร์เรย์ รายการ และ tuples เสนอบริการเดียวกันโดยมีความแตกต่างเล็กน้อย ทูเพิลคืออ็อบเจ็กต์ที่มีรายการลำดับของไอเท็ม มันเหมือนกับอาร์เรย์และรายการ อย่างไรก็ตาม ทั้งคู่สามารถเปลี่ยนแปลงได้ แต่ tuple นั้นไม่เปลี่ยนรูป วัตถุที่ไม่เปลี่ยนรูปจะไม่ได้รับการเปลี่ยนแปลงใด ๆ ระหว่างการดำเนินการ รายการและอาร์เรย์สามารถแก้ไข แบ่งส่วน หรือจัดทำดัชนีได้อย่างง่ายดาย เนื่องจากไม่สามารถเปลี่ยนแปลงได้ แต่ทูเพิลไม่สามารถแก้ไข แบ่งส่วน หรือเปลี่ยนแปลงได้ เนื่องจากเป็นอ็อบเจกต์ที่ไม่เปลี่ยนรูป นอกจากนี้ รายการและอาร์เรย์สามารถจัดเก็บข้อมูลได้เพียงประเภทเดียวเท่านั้น แต่ทูเพิลสามารถมีข้อมูลได้หลายประเภท ในคู่มือนี้ เราจะพูดถึงหน้าที่หลักของ tuple และวิธีการใช้ในโปรแกรม c++

Tuple ในภาษาการเขียนโปรแกรม C ++ คืออะไร?

ทูเพิลในภาษาการเขียนโปรแกรม c++ เป็นอ็อบเจ็กต์ที่มีรายการเรียงลำดับ เป็นชนิดข้อมูลที่ไม่เปลี่ยนรูป ซึ่งหมายความว่าค่าใน tuple ไม่สามารถเปลี่ยนแปลงได้ ณ จุดดำเนินการใดๆ ค่าของทูเพิลถูกกำหนดในวงเล็บเหลี่ยม () ที่คั่นด้วยเครื่องหมายจุลภาค และสามารถเข้าถึงได้โดยการอ้างอิงของดัชนี มีฟังก์ชันมากมายที่สามารถทำได้บน tuple เช่น get(), swap(), tuple_size() และอื่นๆ ในตอนต่อไป เราจะอธิบายการทำงานของ 4 ฟังก์ชั่นโดยใช้ตัวอย่าง

ตัวอย่างที่ 1:
ในตัวอย่างนี้ เราจะสร้างทูเพิลโดยใช้ฟังก์ชัน make_tuple() make_tuple() ใช้ในโปรแกรม c++ เพื่อกำหนดค่าให้กับ tuple ค่าที่ต้องกำหนดให้กับ tuple ควรอยู่ในลำดับเดียวกับที่ประกาศไว้ใน tuple ให้เราดูโค้ดที่แนบมาด้านล่างเพื่อทำความเข้าใจว่าฟังก์ชัน make_tuple() ทำงานอย่างไรในโปรแกรม c++







ไลบรารี 'include ' และ 'using namespace std' จะรวมอยู่ในโปรแกรมเพื่อใช้ฟังก์ชันอินพุตและเอาต์พุตมาตรฐาน เช่น cin และ cout 'include ' จะอนุญาตให้ใช้ tuple ในโปรแกรม รหัสที่สมบูรณ์มีอยู่ในฟังก์ชัน main() tuple 't' ถูกประกาศด้วยห้าองค์ประกอบ ค่าสำหรับทูเพิลต้องอยู่ในลำดับเดียวกัน อย่างที่คุณสังเกตได้ ('a', 75, 5, 'z', 5.5) ในฟังก์ชัน make_tuple() อยู่ในลำดับเดียวกับค่าที่ประกาศสำหรับ tuple หลังจากรันโค้ดนี้ คุณจะไม่ได้รับสิ่งใดเป็นการตอบแทนที่บ่งชี้ว่าการดำเนินการสำเร็จ



#include
#include
โดยใช้ เนมสเปซ มาตรฐาน ;
int หลัก ( )
{
ทูเพิล < char , int , int , char , ลอย > t ;
t = make_tuple ( 'อา' , 75 , 5 , 'กับ' , 5.5 ) ;
กลับ 0 ;
}



ชำระเงินผลลัพธ์ที่ได้รับในภาพหน้าจอด้านล่าง:





โปรดทราบว่าไม่มีสิ่งใดส่งคืนโดยโปรแกรม ให้เราพิมพ์ค่าของทูเพิล



ตัวอย่างที่ 2:
ในตัวอย่างนี้ ฟังก์ชัน get() ถูกใช้บน tuple เพื่อแสดงค่าของมัน ค่าของทูเพิลสามารถพิมพ์ได้ด้วยฟังก์ชัน get() ในภาษาโปรแกรม c++ เท่านั้น ดูรหัสด้านล่าง

โปรดทราบว่าเราใช้โค้ดและข้อมูลตัวอย่างเดียวกันกับที่เราทำในตัวอย่างก่อนหน้านี้ โดยใช้ฟังก์ชัน make_tuple() ค่าต่างๆ จะถูกกำหนดค่าให้กับ tuple ได้สำเร็จ ฟังก์ชัน get() ใช้เพื่อเข้าถึงค่าของ tuple โดยอ้างอิงหมายเลขดัชนีที่เริ่มต้นจาก 0 หมายเลขดัชนีแต่ละตัวจะถูกส่งไปยังฟังก์ชัน get() และค่าทั้งหมดของ tuple จะถูกพิมพ์ด้วยคำสั่ง cout

#include
#include
โดยใช้ เนมสเปซ มาตรฐาน ;
int หลัก ( )
{
ทูเพิล < char , int , int , char , ลอย > t ;
t = make_tuple ( 'อา' , 75 , 5 , 'กับ' , 5.5 ) ;
int ผม ;
ศาล << 'ค่าของทูเพิลคือ:' ;
ศาล << รับ < 0 > ( t ) << ' ' << รับ < 1 > ( t ) << ' ' << รับ < สอง > ( t )
<< ' ' << รับ < 3 > ( t ) << ' ' << รับ < 4 > ( t ) << endl ;
กลับ 0 ;
}

ตรวจสอบผลลัพธ์ของรหัสนี้ในภาพหน้าจอด้านล่าง:

ฟังก์ชัน get() พิมพ์ค่าในลำดับเดียวกับที่กำหนดให้กับทูเพิล

ตัวอย่างที่ 3:
ในตัวอย่างนี้ เราจะสาธิตการทำงานของฟังก์ชัน tuple_size() ด้วยความช่วยเหลือของตัวอย่าง เราจะอธิบายวิธีหาขนาดของทูเพิลโดยใช้ฟังก์ชัน tuple_size ตรวจสอบรหัสที่ระบุด้านล่าง

บรรทัดที่เหลือของโค้ดเหมือนกับที่ใช้ในตัวอย่างก่อนหน้านี้ ฟังก์ชัน tuple_size ที่นี่จะได้รับขนาดของ tuple 'decltype' หมายถึงประเภทที่ประกาศใช้เพื่อตรวจสอบประเภทของนิพจน์ที่กำหนด

#include
#include
โดยใช้ เนมสเปซ มาตรฐาน ;
int หลัก ( )
{
ทูเพิล < char , int , int , char , ลอย > t ;
t = make_tuple ( 'อา' , 75 , 5 , 'กับ' , 5.5 ) ;
int ผม ;
ศาล << 'ขนาดของทูเพิลคือ = ' ;
ศาล << tuple_size < decltype ( t ) > :: ค่า << endl ;
กลับ 0 ;
}

เมื่อคุณรันโค้ดนี้ ผลลัพธ์ต่อไปนี้จะถูกสร้างขึ้น:

เรากำหนดค่า 5 ค่าให้กับ tuple และฟังก์ชัน tuple_size() ก็คืนค่าขนาดของ tuple 5 ด้วย

ตัวอย่างที่ 4:
เราสามารถเชื่อม tuples เข้าด้วยกันโดยใช้ฟังก์ชัน tuple_cat() และสร้าง tuple ใหม่จากมัน ในที่นี้ เราจะสาธิตการใช้ฟังก์ชัน tuple_cat() เพื่อเชื่อม tuples สองตัวเข้าด้วยกัน

ในโค้ดที่ระบุด้านล่าง เราได้ประกาศทูเพิลสองตัว t1 และ t2 และกำหนดค่า 3/3 ให้กับทูเพิลแต่ละตัว จากนั้น เราใช้ฟังก์ชัน tuple_cat() เพื่อเชื่อม tuples ทั้งสองเข้าด้วยกันและสร้าง tuple ใหม่ หลังจากนั้น เราก็พิมพ์ค่าของทูเพิลทั้งหมดโดยใช้ฟังก์ชัน get() ฟังก์ชัน tuple_cat() นำสิ่งอันดับที่จำเป็นต้องต่อกัน รวมค่าที่กำหนดให้กับ tuple แต่ละตัว และสร้าง tuple ใหม่ขึ้นมา

โปรดทราบว่า tuples t1 และ t2 มีค่า 3/3 และเราพิมพ์แต่ละค่าโดยใช้ฟังก์ชัน get() โดยอ้างอิงจากดัชนี 0 ถึงดัชนี 2 อย่างไรก็ตาม เมื่อนำมาต่อกัน ค่าทั้งหมดจะเป็น 6 ดังนั้น เราต้องการ เพื่อพิมพ์ดัชนีจาก 0 ถึง 5 เพื่อให้ค่าทั้งหมดถูกพิมพ์ ตรวจสอบผลลัพธ์ด้านล่าง และสังเกตว่า 3 ค่าถูกพิมพ์บน tuple t1; 3 ค่าถูกพิมพ์บน tuple 2 อย่างไรก็ตาม 6 ค่าถูกพิมพ์จาก tuple 3 เนื่องจากค่าที่ต่อกันใน tuple ใหม่คือ 6

#include
#include
โดยใช้ เนมสเปซ มาตรฐาน ;
int หลัก ( )
{
ทูเพิล < char , int , ลอย > t1 ( 'อา' , 75 , 6.7 ) ;
ทูเพิล < int , char , ลอย > t2 ( 10 , 'ที' , 77.9 ) ;
รถยนต์ t3 = tuple_cat ( t1,t2 ) ;
ศาล << 'ทูเพิลตัวแรกประกอบด้วย =  ' ;
ศาล << รับ < 0 > ( t1 ) << ' ' << รับ < 1 > ( t1 ) << ' ' << รับ < สอง > ( t1 ) << endl << endl ;
ศาล << 'ทูเพิลที่สองประกอบด้วย =  ' ;
ศาล << รับ < 0 > ( t2 ) << ' ' << รับ < 1 > ( t2 ) << ' ' << รับ < สอง > ( t2 ) << endl << endl ;
ศาล << 'ทูเพิลใหม่คือ = ' ;
ศาล << รับ < 0 > ( t3 ) << ' ' << รับ < 1 > ( t3 ) << ' ' << รับ < สอง > ( t3 ) << ' '
<< รับ < 3 > ( t3 ) << ' ' << รับ < 4 > ( t3 ) << ' ' << รับ < 5 > ( t3 ) << endl ;
กลับ 0 ;
}

นี่คือผลลัพธ์:

บทสรุป

บทความนี้เป็นภาพรวมของสิ่งอันดับในภาษาการเขียนโปรแกรม c++ ทูเพิลใน c++ เป็นอ็อบเจ็กต์ที่ไม่เปลี่ยนรูปซึ่งมีค่าของประเภทข้อมูลที่แตกต่างกันไปพร้อม ๆ กัน ทูเปิลไม่สามารถเปลี่ยนแปลงหรือแก้ไข ณ จุดดำเนินการใดๆ ได้ เนื่องจากไม่สามารถเปลี่ยนแปลงได้ ฟังก์ชัน tuples สามารถดำเนินการได้หลายอย่างเพื่อให้ได้ผลลัพธ์ที่แน่นอน โดย 4 ฟังก์ชันจะแสดงในบทความนี้พร้อมตัวอย่างตัวอย่าง