สำหรับรถยนต์ใน C ++

Sahrab Rthynt Ni C



C++ จัดเตรียมคีย์เวิร์ด “auto” ที่ระบุว่าประเภทของตัวแปรจะถูกอนุมานโดยอัตโนมัติจากตัวเริ่มต้นเมื่อมีการประกาศครั้งแรก นอกจากนี้ วิธีการที่มีประเภทการส่งคืนเป็นอัตโนมัติจะตรวจสอบนิพจน์ประเภทการส่งคืน ณ รันไทม์ นอกจากนี้เรายังสามารถกำหนดได้เมื่อมีการใช้เพื่อตรวจจับประเภทข้อมูลของค่าโดยอัตโนมัติ เมื่อเราใช้คีย์เวิร์ด “auto” นี้ในลูป “for” เราไม่จำเป็นต้องเพิ่มประเภทข้อมูลกับตัววนซ้ำแต่ละตัว คีย์เวิร์ด “auto” ในลูป “for” สั่งให้คอมไพลเลอร์กำหนดประเภทของตัวแปรที่ประกาศโดยใช้นิพจน์การเริ่มต้น

ตัวอย่างที่ 1:

“iostream” เป็นไฟล์ส่วนหัวแรกที่นี่ซึ่งมีการประกาศฟังก์ชันของ C++ จากนั้น เราจะเพิ่มไฟล์ส่วนหัว 'เวกเตอร์' ซึ่งรวมอยู่ที่นี่ เพื่อให้เราสามารถทำงานร่วมกับเวกเตอร์และฟังก์ชันเพื่อทำงานกับเวกเตอร์ได้ จากนั้น “std” คือเนมสเปซที่เราแทรกที่นี่ ดังนั้นเราจึงไม่จำเป็นต้องใส่ “std” นี้พร้อมกับฟังก์ชันทั้งหมดแยกกันในโค้ดนี้ จากนั้น 'main()' จะถูกเรียกใช้ที่นี่ ข้างใต้นี้ เราสร้างเวกเตอร์ประเภทข้อมูล 'int' ด้วยชื่อ 'myNewData' และแทรกค่าจำนวนเต็มบางส่วนลงไป

หลังจากนี้ เราจะวางลูป 'for' และใช้คีย์เวิร์ด 'auto' นี้อยู่ข้างใน ตอนนี้ตัววนซ้ำนี้จะตรวจจับประเภทข้อมูลของค่าที่นี่ เราได้รับค่าของเวกเตอร์ “myNewData” และบันทึกไว้ในตัวแปร “data” และยังแสดงไว้ที่นี่เมื่อเราเพิ่ม “data” นี้ใน “cout”







รหัส 1:



#รวม
#รวม <เวกเตอร์>
โดยใช้ เนมสเปซ มาตรฐาน ;
ภายใน หลัก ( ) {
เวกเตอร์ < ภายใน > myNewData { สิบเอ็ด , 22 , 33 , 44 , 55 , 66 } ;
สำหรับ ( อัตโนมัติ ข้อมูล : : myNewData ) {
ศาล << ข้อมูล << สิ้นสุด ;
}
}

เอาท์พุต : :
เราได้เห็นค่าทั้งหมดของเวกเตอร์นี้ซึ่งพิมพ์ไว้ตรงนี้แล้ว เราพิมพ์ค่าเหล่านี้โดยใช้ลูป 'for' และวางคีย์เวิร์ด 'auto' ไว้ข้างใน







ตัวอย่างที่ 2:

ที่นี่ เราเพิ่ม “bits/stdc++.h” เนื่องจากมีการประกาศฟังก์ชันทั้งหมด จากนั้นเราใส่เนมสเปซ 'std' ที่นี่แล้วเรียกใช้ 'main()' ด้านล่างนี้ เราจะเริ่มต้น 'set' ของ 'string' และตั้งชื่อเป็น 'myString' จากนั้นในบรรทัดถัดไป เราจะแทรกข้อมูลสตริงลงไป เราใส่ชื่อผลไม้บางส่วนในชุดนี้โดยใช้วิธี 'insert()'

เราใช้วง 'for' ข้างใต้และวางคีย์เวิร์ด 'auto' ไว้ข้างใน หลังจากนั้น เราจะเริ่มต้นตัววนซ้ำด้วยชื่อ “my_it” ด้วยคีย์เวิร์ด “auto” และกำหนด “myString” ให้กับสิ่งนี้พร้อมกับฟังก์ชัน “begin()”



จากนั้น เราวางเงื่อนไขที่เป็น “my_it” ซึ่งไม่เท่ากับ “myString.end()” และเพิ่มค่าของตัววนซ้ำโดยใช้ “my_it++” หลังจากนั้น เราก็วาง ”*my_it” ไว้ใน “cout” ตอนนี้ พิมพ์ชื่อผลไม้ตามลำดับตัวอักษร และประเภทข้อมูลจะถูกตรวจจับโดยอัตโนมัติเมื่อเราวางคีย์เวิร์ด 'auto' ที่นี่

รหัส 2:

#รวม
โดยใช้ เนมสเปซ มาตรฐาน ;
ภายใน หลัก ( )
{
ชุด < เชือก > myString ;
myString. แทรก ( { 'องุ่น' , 'ส้ม' , 'กล้วย' , 'ลูกแพร์' , 'แอปเปิล' } ) ;
สำหรับ ( อัตโนมัติ my_it = myString. เริ่ม ( ) ; my_it ! = myString. จบ ( ) ; my_it ++ )
ศาล << * my_it << ' ' ;

กลับ 0 ;
}

เอาท์พุท:
ที่นี่เราจะสังเกตเห็นว่าชื่อผลไม้จะแสดงตามลำดับตัวอักษร ข้อมูลทั้งหมดถูกแสดงผลที่นี่ ซึ่งเราแทรกไว้ในชุดสตริงเนื่องจากเราใช้ 'for' และ 'auto' ในโค้ดก่อนหน้า

ตัวอย่างที่ 3:

เนื่องจาก “bits/stdc++.h” มีการประกาศฟังก์ชันทั้งหมดแล้ว เราจึงเพิ่มไว้ที่นี่ หลังจากเพิ่มเนมสเปซ “std” แล้ว เราจะเรียก “main()” จากตำแหน่งนี้ “ชุด” ของ “int” ที่เราสร้างขึ้นต่อไปนี้เรียกว่า “myIntegers” จากนั้นเราเพิ่มข้อมูลจำนวนเต็มในบรรทัดที่ตามมา เราใช้วิธี 'insert()' เพื่อเพิ่มจำนวนเต็มสองสามตัวในรายการนี้ ขณะนี้คำหลัก 'อัตโนมัติ' ถูกแทรกลงในลูป 'สำหรับ' ที่ใช้ข้างใต้นี้

ต่อไป เราใช้คีย์เวิร์ด “auto” เพื่อเริ่มต้นตัววนซ้ำด้วยชื่อ “new_it” โดยกำหนดฟังก์ชัน “myIntegers” และ “begin()” ให้กับมัน ต่อไป เราตั้งค่าเงื่อนไขที่ระบุว่า “my_it” ต้องไม่เท่ากับ “myIntegers.end()” และใช้ “new_it++” เพื่อเพิ่มค่าของตัววนซ้ำ ต่อไป เราจะแทรก “*new_it” ลงในส่วน “cout” นี้ มันพิมพ์จำนวนเต็มจากน้อยไปหามาก เมื่อใส่คำสำคัญ 'อัตโนมัติ' ระบบจะตรวจจับประเภทข้อมูลโดยอัตโนมัติ

รหัส 3:

#รวม
โดยใช้ เนมสเปซ มาตรฐาน ;
ภายใน หลัก ( )
{
ชุด < ภายใน > จำนวนเต็มของฉัน ;
จำนวนเต็มของฉัน แทรก ( { สี่ห้า , 31 , 87 , 14 , 97 , ยี่สิบเอ็ด , 55 } ) ;
สำหรับ ( อัตโนมัติ ใหม่_มัน = จำนวนเต็มของฉัน เริ่ม ( ) ; ใหม่_มัน ! = จำนวนเต็มของฉัน จบ ( ) ; ใหม่_มัน ++ )
ศาล << * ใหม่_มัน << ' ' ;

กลับ 0 ;
}

เอาท์พุต : :
จำนวนเต็มจะแสดงที่นี่โดยเรียงลำดับจากน้อยไปมากดังที่เห็นต่อไปนี้ เนื่องจากเราใช้คำว่า 'for' และ 'auto' ในโค้ดก่อนหน้า ข้อมูลทั้งหมดที่เราใส่ไว้ในชุดจำนวนเต็มจึงถูกแสดงผลที่นี่

ตัวอย่างที่ 4:

ไฟล์ส่วนหัว “iostream” และ “vector” จะรวมอยู่ด้วยในขณะที่เราทำงานกับเวกเตอร์ที่นี่ จากนั้นเพิ่มเนมสเปซ 'std' และเราเรียก 'main()' จากนั้น เราเริ่มต้นเวกเตอร์ของประเภทข้อมูล 'int' ด้วยชื่อ 'myVectorV1' และเพิ่มค่าบางส่วนให้กับเวกเตอร์นี้ ตอนนี้เราวางลูป 'for' และใช้ 'auto' ที่นี่เพื่อตรวจจับประเภทข้อมูล เราเข้าถึงด้วยค่าของเวกเตอร์ จากนั้นพิมพ์โดยวาง “valueOfVector” ไว้ใน “cout”

หลังจากนี้ เราจะวาง 'for' และ 'auto' อีกอันไว้ข้างใน และเริ่มต้นด้วย '&& valueOfVector : myVectorV1' ที่นี่ เราเข้าถึงโดยการอ้างอิง จากนั้นพิมพ์ค่าทั้งหมดโดยใส่ “valueOfVector” ลงใน “cout” ตอนนี้เราไม่จำเป็นต้องแทรกประเภทข้อมูลสำหรับทั้งสองลูปเนื่องจากเราใช้คีย์เวิร์ด 'auto' ภายในลูป

รหัส 4:

#รวม
#รวม <เวกเตอร์>
โดยใช้ เนมสเปซ มาตรฐาน ;
ภายใน หลัก ( ) {
เวกเตอร์ < ภายใน > myVectorV1 = { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 } ;
สำหรับ ( อัตโนมัติ ค่าของเวกเตอร์ : : myVectorV1 )
ศาล << ค่าของเวกเตอร์ << '' ;
ศาล << สิ้นสุด ;
สำหรับ ( อัตโนมัติ && ค่าของเวกเตอร์ : : myVectorV1 )
ศาล << ค่าของเวกเตอร์ << '' ;
ศาล << สิ้นสุด ;
กลับ 0 ;
}

เอาท์พุท:
ข้อมูลทั้งหมดของเวกเตอร์จะปรากฏขึ้น ตัวเลขที่แสดงในบรรทัดแรกคือตัวเลขที่เราเข้าถึงโดยค่า และตัวเลขที่แสดงในบรรทัดที่สองคือตัวเลขที่เราเข้าถึงโดยการอ้างอิงในโค้ด

ตัวอย่างที่ 5:

หลังจากเรียกเมธอด 'main()' ในโค้ดนี้แล้ว เราจะเริ่มต้นอาร์เรย์สองตัวคือ 'myFirstArray' ขนาด '7' ด้วยประเภทข้อมูล 'int' และ 'mySecondArray' ด้วยขนาด '7' ของ 'double' ประเภทข้อมูล. เราแทรกค่าลงในอาร์เรย์ทั้งสอง ในอาร์เรย์แรก เราใส่ค่า 'จำนวนเต็ม' ในอาร์เรย์ที่สอง เราจะเพิ่มค่า 'สองเท่า' หลังจากนี้ เราใช้ 'for' และแทรก 'auto' ในวงนี้

ที่นี่ เราใช้ลูป 'range base for' สำหรับ 'myFirstArray' จากนั้นเราวาง 'myVar' ไว้ใน 'cout' ด้านล่างนี้ เราจะวางลูปอีกครั้งและใช้ลูป 'ฐานช่วงสำหรับ' การวนซ้ำนี้มีไว้สำหรับ 'mySecondArray' จากนั้นเราก็พิมพ์ค่าของอาร์เรย์นั้นด้วย

รหัส 5:

#รวม
โดยใช้ เนมสเปซ มาตรฐาน ;
ภายใน หลัก ( )
{
ภายใน myFirstArray [ 7 ] = { สิบห้า , 25 , 35 , สี่ห้า , 55 , 65 , 75 } ;
สองเท่า mySecondArray [ 7 ] = { 2.64 , 6.45 , 8.5 , 2.5 , 4.5 , 6.7 , 8.9 } ;
สำหรับ ( ค่าคงที่ อัตโนมัติ & myVar : : myFirstArray )
{
ศาล << myVar << ' ' ;
}
ศาล << สิ้นสุด ;
สำหรับ ( ค่าคงที่ อัตโนมัติ & myVar : : mySecondArray )
{
ศาล << myVar << ' ' ;
}
กลับ 0 ;
}

เอาท์พุท:
ข้อมูลทั้งหมดของเวกเตอร์ทั้งสองจะแสดงในผลลัพธ์นี้ที่นี่

บทสรุป

บทความนี้มีการศึกษาแนวคิด 'สำหรับรถยนต์' อย่างละเอียด เราอธิบายว่า 'อัตโนมัติ' ตรวจจับประเภทข้อมูลโดยไม่ต้องกล่าวถึง เราได้สำรวจตัวอย่างหลายรายการในบทความนี้และได้ให้คำอธิบายโค้ดไว้ที่นี่ด้วย เราได้อธิบายการทำงานของแนวคิด 'สำหรับรถยนต์' อย่างลึกซึ้งในบทความนี้