In the code above, the Defrag function contains a local, static, time_ การแปล - In the code above, the Defrag function contains a local, static, time_ ไทย วิธีการพูด

In the code above, the Defrag funct

In the code above, the Defrag function contains a local, static, time_t variable which stores the last time this function was called.

The first time the function is called, the static time_t variable (LastDefrag) is created and set to zero. That variable is subsequently set to the system time if a condition is met: namely that the elapsed time period since the last call of Defrag is greater than one hour.

When the main function calls Defrag again, it ignores the creation and initialisation of the static time_t variable. It simply makes the comparison for time passed, and (given we’ve only waited a couple of seconds between calls) the condition is not met and defragmentation is not commenced.

You can verify that this variable is working correctly by changing the function to test for a difference of greater than 1 second (instead of 1 hour, which is the 3600 seconds you see in the code).

When you make this change, the Defrag command will run twice because the time difference is greater than stipulated.

And that’s all there is to it. Function level static variables are definitely the nicest of them all.
0/5000
จาก: -
เป็น: -
ผลลัพธ์ (ไทย) 1: [สำเนา]
คัดลอก!
ในรหัสข้างต้น ฟังก์ชัน Defrag ประกอบด้วยตัวเครื่อง คง time_t แปรที่จัดเก็บครั้งสุดท้ายที่มีเรียกฟังก์ชันนี้ครั้งแรกที่เรียกว่าฟังก์ชัน ตัวแปรคงที่ time_t (LastDefrag) จะถูกสร้าง และตั้งค่าเป็นศูนย์ ตัวแปรที่จะมาตั้งเวลาระบบถ้าเงื่อนไขเป็น: คือที่ระยะเวลาที่ผ่านไปตั้งแต่การโทรครั้งล่าสุดของ Defrag เป็นมากกว่าหนึ่งชั่วโมงเมื่อฟังก์ชันหลัก Defrag อีก ละเว้นการสร้างและ initialisation ของตัวแปร time_t คง เพียงทำการเปรียบเทียบสำหรับเวลาที่ผ่านไป และ (ให้ได้เท่านั้นแหละสองสามวินาทีระหว่างโทรศัพท์) ไม่เป็นไปตามเงื่อนไข และจัดเรียงข้อมูลไม่ได้เริ่มดำเนินการคุณสามารถตรวจสอบว่า ตัวแปรนี้ทำงานอย่างถูกต้อง โดยการเปลี่ยนฟังก์ชันการทดสอบความแตกต่างของมากกว่า 1 วินาที (แทน 1 ชั่วโมง ซึ่งเป็น 3600 วินาทีที่คุณเห็นในรหัส)เมื่อคุณทำการเปลี่ยนแปลง คำสั่ง Defrag จะทำสองครั้งเนื่องจากความต่างของเวลามากกว่ากำหนดและนั่นคือทั้งหมดมีไป ฟังก์ชันตัวแปรคงที่ที่ระดับแน่นอนน่ารักของพวกเขาทั้งหมด
การแปล กรุณารอสักครู่..
ผลลัพธ์ (ไทย) 2:[สำเนา]
คัดลอก!
ในโค้ดข้างต้นฟังก์ชั่น Defrag ที่มีในท้องถิ่นคงที่ตัวแปร time_t ที่เก็บครั้งสุดท้ายที่ฟังก์ชั่นนี้ถูกเรียกว่า. ครั้งแรกที่ฟังก์ชั่นที่เรียกว่าตัวแปร time_t คงที่ (LastDefrag) ถูกสร้างขึ้นและตั้งค่าเป็นศูนย์ ตัวแปรที่กำหนดต่อมาเวลาของระบบเมื่อเงื่อนไขที่จะพบ. คือว่าช่วงเวลาที่ผ่านไปนับตั้งแต่สายล่าสุดของ Defrag มีค่ามากกว่าหนึ่งชั่วโมงเมื่อฟังก์ชั่นหลักเรียกDefrag อีกครั้งก็ไม่สนใจการสร้างและการ initialisation ของคงที่ ตัวแปร time_t มันก็ทำให้การเปรียบเทียบเวลาที่ผ่านไปและ (เราได้รับการรอเพียงไม่กี่วินาทีระหว่างสาย) เงื่อนไขที่ไม่ได้พบและจัดระเบียบไม่ได้เริ่ม. คุณสามารถตรวจสอบว่าตัวแปรนี้ทำงานอย่างถูกต้องโดยการเปลี่ยนฟังก์ชั่นในการทดสอบ สำหรับความแตกต่างของมากกว่า 1 วินาที (แทน 1 ชั่วโมงซึ่งเป็น 3600 วินาทีที่คุณเห็นในรหัส). เมื่อคุณทำการเปลี่ยนแปลงคำสั่ง Defrag จะทำงานสองครั้งเพราะความแตกต่างเวลาที่มีค่ามากกว่าที่กำหนดไว้. และนั่นคือทั้งหมด ที่มีให้มัน ฟังก์ชั่นระดับตัวแปรคงเป็นมั่นเหมาะที่ดีที่สุดของพวกเขาทั้งหมด









การแปล กรุณารอสักครู่..
ผลลัพธ์ (ไทย) 3:[สำเนา]
คัดลอก!
ในโค้ดข้างต้นฟังก์ชันจะประกอบด้วยท้องถิ่น , คงที่ , ตัวแปรที่ร้านค้า time_t ครั้งสุดท้ายฟังก์ชันนี้เรียกว่า

ครั้งแรกฟังก์ชันเรียกว่า ตัวแปร time_t คงที่ ( lastdefrag ) ถูกสร้างขึ้นและตั้งศูนย์ ที่ตัวแปรภายหลังการตั้งค่าเวลาของระบบ ถ้าเงื่อนไขเป็นไปตาม :คือว่า เวลาที่ผ่านไปช่วงเวลาตั้งแต่ครั้งสุดท้ายของ Defrag มากกว่าหนึ่งชั่วโมง

เมื่อฟังก์ชันหลักเรียก Defrag อีกครั้ง มันไม่สนใจการสร้างและ initialisation ของตัวแปร time_t สถิตย์ มันก็ทำให้การเปรียบเทียบเวลาผ่าน และให้เรารอสองสามวินาทีระหว่างสาย ) เงื่อนไขไม่พบ และจัดระเบียบไม่ใช่

เริ่ม .คุณสามารถตรวจสอบว่าตัวแปรนี้จะทำงานอย่างถูกต้องโดยการเปลี่ยนฟังก์ชันการทดสอบความแตกต่างมากกว่า 1 วินาที ( แทน 1 ชั่วโมงซึ่งมี 3600 วินาทีที่คุณเห็นในรหัส )

เมื่อคุณทำการเปลี่ยนแปลงนี้ จะสั่ง จะวิ่งถึง 2 ครั้ง เพราะความแตกต่างของเวลามากกว่าที่กำหนด .

และนั่นคือทั้งหมดที่มีให้มันฟังก์ชันตัวแปรระดับคงที่แน่นอนที่สุดของพวกเขาทั้งหมด
การแปล กรุณารอสักครู่..
 
ภาษาอื่น ๆ
การสนับสนุนเครื่องมือแปลภาษา: กรีก, กันนาดา, กาลิเชียน, คลิงออน, คอร์สิกา, คาซัค, คาตาลัน, คินยารวันดา, คีร์กิซ, คุชราต, จอร์เจีย, จีน, จีนดั้งเดิม, ชวา, ชิเชวา, ซามัว, ซีบัวโน, ซุนดา, ซูลู, ญี่ปุ่น, ดัตช์, ตรวจหาภาษา, ตุรกี, ทมิฬ, ทาจิก, ทาทาร์, นอร์เวย์, บอสเนีย, บัลแกเรีย, บาสก์, ปัญจาป, ฝรั่งเศส, พาชตู, ฟริเชียน, ฟินแลนด์, ฟิลิปปินส์, ภาษาอินโดนีเซี, มองโกเลีย, มัลทีส, มาซีโดเนีย, มาราฐี, มาลากาซี, มาลายาลัม, มาเลย์, ม้ง, ยิดดิช, ยูเครน, รัสเซีย, ละติน, ลักเซมเบิร์ก, ลัตเวีย, ลาว, ลิทัวเนีย, สวาฮิลี, สวีเดน, สิงหล, สินธี, สเปน, สโลวัก, สโลวีเนีย, อังกฤษ, อัมฮาริก, อาร์เซอร์ไบจัน, อาร์เมเนีย, อาหรับ, อิกโบ, อิตาลี, อุยกูร์, อุสเบกิสถาน, อูรดู, ฮังการี, ฮัวซา, ฮาวาย, ฮินดี, ฮีบรู, เกลิกสกอต, เกาหลี, เขมร, เคิร์ด, เช็ก, เซอร์เบียน, เซโซโท, เดนมาร์ก, เตลูกู, เติร์กเมน, เนปาล, เบงกอล, เบลารุส, เปอร์เซีย, เมารี, เมียนมา (พม่า), เยอรมัน, เวลส์, เวียดนาม, เอสเปอแรนโต, เอสโทเนีย, เฮติครีโอล, แอฟริกา, แอลเบเนีย, โคซา, โครเอเชีย, โชนา, โซมาลี, โปรตุเกส, โปแลนด์, โยรูบา, โรมาเนีย, โอเดีย (โอริยา), ไทย, ไอซ์แลนด์, ไอร์แลนด์, การแปลภาษา.

Copyright ©2024 I Love Translation. All reserved.

E-mail: