ฉันเพิ่งพบฟังก์ชันนี้ในโครงการที่ฉันทำงานอยู่:
-- Just returns the text unchanged.
-- Note: <text> may be nil, function must return nil in that case!
function Widget:wtr(text)
return text
end
น่าเศร้าที่ผู้ทำรหัสไม่ทำงานใน บริษัท อีกต่อไป ทำไมหนึ่งจะสร้างฟังก์ชั่นที่ไม่ทำอะไรเลย แต่ส่งกลับพารามิเตอร์ที่เรียกว่าด้วย?
มีการใช้ฟังก์ชันดังกล่าวไม่ได้ระบุตัวอย่างนี้ แต่โดยรวมในกรณีใด ๆ ?
เนื่องจาก
function aFunction(parameter)
return parameter
end
จบลงแล้ว
aFunction(parameter) == parameter
ทำไมฉันต้องเขียนอะไรบางอย่าง
aFunction(parameter) == whatIWantToCheck
แทน
parameter == whatIWantToCheck
?
this
ผูกมัดเกี่ยวข้องกับการกลับมา
int getParam(int param) { //DO NOTHING return param; }
จากมุมมองของการโยงวิธีการมันเป็นการโทรซ้ำซ้อนและไม่จำเป็นโดยที่คุณสามารถออกจากฟังก์ชั่นของ OP จากห่วงโซ่วิธีการและมันจะไม่สร้างความแตกต่างเลย
new Foo()->method();
ไม่ใช่ไวยากรณ์ที่ถูกต้องและโครงสร้างเหมือนfunction with($what) { return $what; }; with(new Foo())->method();
ถูกใช้เป็นวิธีแก้ปัญหา