คำถามติดแท็ก syntax

ไวยากรณ์หมายถึงองค์ประกอบภาษาจริงและสัญลักษณ์เอง ควรติดแท็กคำถามเป็นไวยากรณ์เมื่อคำถามเฉพาะและเกี่ยวข้องเกือบทั้งหมดกับไวยากรณ์เพียงอย่างเดียว แท็กนี้ควรใช้กับแท็กภาษาเฉพาะ

6
คำหลัก 'เปิด' ใน Swift คืออะไร
ObjectiveC.swiftไฟล์จากห้องสมุดมาตรฐานมีเพียงไม่กี่บรรทัดของรหัสต่อไปรอบ ๆ เส้น 228: extension NSObject : Equatable, Hashable { /// ... open var hashValue: Int { return hash } } อะไรopen varหมายถึงในบริบทนี้หรือสิ่งที่เป็นopenคำหลักในทั่วไป?

8
อะไรคือความแตกต่างอย่างเป็นทางการใน Scala ระหว่างวงเล็บปีกกาและวงเล็บและควรใช้เมื่อใด?
เป็นความแตกต่างอย่างเป็นทางการระหว่างการขัดแย้งผ่านฟังก์ชั่นในวงเล็บอะไร()และในการจัดฟัน{}? ความรู้สึกที่ฉันได้รับจากการเขียนโปรแกรมในหนังสือสกาล่าคือความยืดหยุ่นของสกาล่าและฉันควรใช้สิ่งที่ฉันชอบที่สุด แต่ฉันพบว่าบางกรณีก็คอมไพล์ในขณะที่คนอื่นไม่ทำ ตัวอย่างเช่น (หมายถึงเพียงตัวอย่างฉันจะขอบคุณคำตอบใด ๆ ที่กล่าวถึงกรณีทั่วไปไม่ใช่เฉพาะตัวอย่างนี้เท่านั้น): val tupleList = List[(String, String)]() val filtered = tupleList.takeWhile( case (s1, s2) => s1 == s2 ) => ข้อผิดพลาด: การเริ่มต้นของการแสดงออกอย่างง่ายที่ผิดกฎหมาย val filtered = tupleList.takeWhile{ case (s1, s2) => s1 == s2 } => สบายดี


5
วิธีทำ“ ถ้าไม่ใช่สภาพที่แท้จริง”?
ฉันต้องการให้echoคำสั่งดำเนินการเมื่อcat /etc/passwd | grep "sysa"ไม่เป็นความจริง ผมทำอะไรผิดหรือเปล่า? if ! [ $(cat /etc/passwd | grep "sysa") ]; then echo "ERROR - The user sysa could not be looked up" exit 2 fi

3
คำสั่งกรณีที่มีหลายค่าในแต่ละบล็อก 'เมื่อ'
วิธีที่ดีที่สุดที่ฉันสามารถอธิบายสิ่งที่ฉันกำลังมองหาคือการแสดงรหัสที่ล้มเหลวที่ฉันได้ลองไปแล้ว: case car when ['honda', 'acura'].include?(car) # code when 'toyota' || 'lexus' # code end ฉันมีประมาณ 4 หรือ 5 ที่แตกต่างกันwhenในสถานการณ์ที่ควรจะเรียกโดยประมาณ 50 carค่าที่เป็นไปแตกต่างกันของ มีวิธีทำเช่นนี้กับcaseบล็อกหรือฉันควรลองifบล็อกขนาดใหญ่หรือไม่?

8
คำหลัก "forall" ใน Haskell / GHC ทำอะไรได้บ้าง
ฉันเริ่มเข้าใจวิธีการใช้forallคำหลักใน "ประเภทที่มีอยู่" เช่นนี้: data ShowBox = forall s. Show s => SB s อย่างไรก็ตามนี่เป็นเพียงส่วนย่อยของวิธีการforallใช้งานและฉันก็ไม่สามารถห่อหุ้มใจการใช้งานในสิ่งต่าง ๆ เช่นนี้: runST :: forall a. (forall s. ST s a) -> a หรืออธิบายว่าทำไมสิ่งเหล่านี้จึงแตกต่าง: foo :: (forall a. a -> a) -> (Char, Bool) bar :: forall a. ((a -> a) -> (Char, Bool)) หรือทั้งหมดRankNTypes... ฉันมักจะชอบภาษาอังกฤษที่ชัดเจนและไร้คำศัพท์มากกว่าภาษาที่เป็นเรื่องปกติในสภาพแวดล้อมทางวิชาการ …
312 haskell  syntax  types  ghc  forall 

7
การทำความเข้าใจโดยนัยใน Scala
ฉันกำลังทำของฉันผ่านการกวดวิชา playframework Scala และฉันเจอรหัสนี้ซึ่งทำให้ฉันงงงวย: def newTask = Action { implicit request => taskForm.bindFromRequest.fold( errors => BadRequest(views.html.index(Task.all(), errors)), label => { Task.create(label) Redirect(routes.Application.tasks()) } ) } ดังนั้นฉันตัดสินใจที่จะตรวจสอบและเจอโพสต์นี้ ฉันยังไม่เข้าใจ อะไรคือความแตกต่างระหว่างสิ่งนี้: implicit def double2Int(d : Double) : Int = d.toInt และ def double2IntNonImplicit(d : Double) : Int = d.toInt นอกจากความจริงที่เห็นได้ชัดพวกเขามีชื่อวิธีการที่แตกต่างกัน ฉันควรใช้เมื่อใดimplicitและเพราะเหตุใด

8
Java generics - ทำไม“ ขยาย T” อนุญาต แต่ไม่“ ใช้ T”
ฉันสงสัยว่ามีเหตุผลพิเศษใน Java ที่ใช้เสมอ " extends" มากกว่า " implements" เพื่อกำหนดขอบเขตของพารามิเตอร์ ตัวอย่าง: public interface C {} public class A<B implements C>{} เป็นสิ่งต้องห้าม แต่ public class A<B extends C>{} ถูกต้อง. อะไรคือเหตุผลสำหรับสิ่งนั้น?

27
กำลังเข้าถึงคีย์ dict เช่นคุณลักษณะหรือไม่
ฉันคิดว่ามันสะดวกกว่าในการเข้าถึงคีย์ dict obj.fooแทนobj['foo']ดังนั้นฉันจึงเขียนตัวอย่างนี้: class AttributeDict(dict): def __getattr__(self, attr): return self[attr] def __setattr__(self, attr, value): self[attr] = value อย่างไรก็ตามฉันคิดว่าต้องมีเหตุผลบางอย่างที่ Python ไม่ได้ให้ฟังก์ชันการทำงานนี้นอกกรอบ สิ่งที่จะเป็น caveats และข้อผิดพลาดของการเข้าถึงคีย์ dict ในลักษณะนี้

24
วิธีใช้จุด“.” การเข้าถึงสมาชิกพจนานุกรม?
ฉันจะทำให้สมาชิกพจนานุกรม Python สามารถเข้าถึงได้ผ่านจุด "." อย่างไร ตัวอย่างเช่นแทนที่จะของการเขียนmydict['val'], mydict.valผมอยากจะเขียน นอกจากนี้ฉันต้องการเข้าถึง dicts ที่ซ้อนกันด้วยวิธีนี้ ตัวอย่างเช่น mydict.mydict2.val จะหมายถึง mydict = { 'mydict2': { 'val': ... } }

9
เหตุใดฉันจึงควรใช้เครื่องหมายอัฒภาคหลังจากทุกฟังก์ชันใน javascript
ฉันเคยเห็นนักพัฒนาที่แตกต่างกันรวมถึงอัฒภาคหลังจากฟังก์ชั่นใน javascript และบางคนไม่ได้ แนวปฏิบัติที่ดีที่สุดคืออะไร function weLikeSemiColons(arg) { // bunch of code }; หรือ function unnecessary(arg) { // bunch of code }
282 javascript  syntax 

7
รายการบล็อกการประกาศบล็อก
ไวยากรณ์ที่ถูกบล็อกใน Objective C (และแน่นอน C, ฉันเข้าใจ) ไม่เข้ากันอย่างฉาวโฉ่ การส่งบล็อกเป็นอาร์กิวเมนต์จะต่างไปจากการประกาศบล็อกเป็นไอวอรี่ซึ่งมีลักษณะแตกต่างจากtypedefบล็อกไอเอ็นจี มีรายการที่ครอบคลุมของไวยากรณ์ประกาศบล็อกที่ฉันสามารถเก็บไว้เพื่อการอ้างอิงอย่างรวดเร็ว?

13
เพิ่มคุณสมบัติให้กับวัตถุ JavaScript โดยใช้ตัวแปรเป็นชื่อหรือไม่
ฉันดึงรายการออกจาก DOM ด้วย jQuery และต้องการตั้งค่าคุณสมบัติบนวัตถุโดยใช้idองค์ประกอบ DOM ตัวอย่าง const obj = {} jQuery(itemsFromDom).each(function() { const element = jQuery(this) const name = element.attr('id') const value = element.attr('value') // Here is the problem obj.name = value }) หากitemsFromDomรวมองค์ประกอบที่มีid"myId" ฉันต้องการobjมีคุณสมบัติชื่อ "myId" nameดังกล่าวข้างต้นให้ฉัน ฉันจะตั้งชื่อคุณสมบัติของวัตถุโดยใช้ตัวแปรโดยใช้ JavaScript ได้อย่างไร

11
มีความแตกต่างระหว่าง `ดำเนินการต่อ 'และ' ผ่าน 'ในห่วงสำหรับงูหลามใน?
มีความแตกต่างอย่างมีนัยสำคัญระหว่างสองคำหลามcontinueและpassเหมือนในตัวอย่าง for element in some_list: if not element: pass และ for element in some_list: if not element: continue ฉันควรระวัง?
274 python  syntax  continue 

1
“ int main () {(([] () {}) ());}” ใช้ได้อย่างไร ++
ฉันเพิ่งเจอชิ้นส่วนที่ลึกลับของรหัสต่อไปนี้ int main(){(([](){})());} จัดรูปแบบใหม่ดังต่อไปนี้เพื่อให้อ่านง่ายขึ้น: int main(){ (([](){})()); // Um... what?!?! } แต่ฉันไม่เข้าใจว่า(([](){})())รหัสถูกต้องอย่างไร มันดูเหมือนไวยากรณ์ตัวชี้ฟังก์ชันไม่ได้ มันไม่สามารถเป็นกลอุบายการบรรทุกเกินพิกัดบางอย่างได้ รหัสคอมไพล์ตามที่เป็นอยู่ Google ไม่ได้ช่วยอะไรมากนักในการค้นหาสัญลักษณ์ทั้งหมด แต่มันก็คอมไพล์ใน Visual Studio 2010 และไม่มีผลอะไร ไม่มีข้อผิดพลาดและไม่มีคำเตือน ดังนั้นดูเหมือนรหัสที่ถูกต้อง ผมไม่เคยเห็นรหัสที่ถูกต้องใด ๆ ที่อยู่นอกมหัศจรรย์ของJavascriptและC คำแนะนำการทำงาน บางคนสามารถอธิบายได้ว่าวิธีนี้ใช้ได้อย่างไร C ++
271 c++  c++11  lambda  syntax 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.