คำถามติดแท็ก class-constants

7
วิธีการใช้ค่าคงที่คลาสใน typescript ได้อย่างไร
ใน TypeScript constคำหลักไม่สามารถใช้เพื่อประกาศคุณสมบัติคลาส การทำเช่นนี้ทำให้คอมไพเลอร์เกิดข้อผิดพลาดด้วย "สมาชิกคลาสไม่สามารถมีคำหลัก 'const' ได้" ฉันพบว่าตัวเองต้องการระบุอย่างชัดเจนในโค้ดว่าไม่ควรเปลี่ยนคุณสมบัติ ฉันต้องการ IDE หรือคอมไพเลอร์ผิดพลาดหากฉันพยายามกำหนดค่าใหม่ให้กับคุณสมบัติเมื่อมีการประกาศ พวกคุณประสบความสำเร็จได้อย่างไร ขณะนี้ฉันใช้คุณสมบัติอ่านอย่างเดียว แต่ฉันใหม่กับ typescript (และ JavaScript) และสงสัยว่ามีวิธีที่ดีกว่า: get MY_CONSTANT():number {return 10}; ฉันใช้ typescript 1.8 ข้อเสนอแนะ? PS: ตอนนี้ฉันใช้ typescript 2.0.3 ดังนั้นฉันจึงยอมรับคำตอบของเดวิด

12
ฉันสามารถกำหนดค่าของ CONST ในคลาส PHP ได้หรือไม่?
ฉันมีข้อ จำกัด หลายอย่างของ CONST ในบางคลาสและต้องการรับรายชื่อพวกเขา ตัวอย่างเช่น: class Profile { const LABEL_FIRST_NAME = "First Name"; const LABEL_LAST_NAME = "Last Name"; const LABEL_COMPANY_NAME = "Company"; } มีวิธีใดบ้างที่จะได้รายการของ CONST ที่นิยามไว้ในProfileคลาส? เท่าที่ฉันสามารถบอกได้ตัวเลือกที่ใกล้เคียงที่สุด ( get_defined_constants()) จะไม่ทำการหลอกลวง สิ่งที่ฉันต้องการจริงๆคือรายชื่อคงที่ - บางอย่างเช่นนี้: array('LABEL_FIRST_NAME', 'LABEL_LAST_NAME', 'LABEL_COMPANY_NAME') หรือ: array('Profile::LABEL_FIRST_NAME', 'Profile::LABEL_LAST_NAME', 'Profile::LABEL_COMPANY_NAME') หรือแม้กระทั่ง: array('Profile::LABEL_FIRST_NAME'=>'First Name', 'Profile::LABEL_LAST_NAME'=>'Last Name', 'Profile::LABEL_COMPANY_NAME'=>'Company')

7
รับค่าของค่าคงที่คลาสที่เลือกแบบไดนามิกใน PHP
ฉันต้องการที่จะทำสิ่งนี้: class ThingIDs { const Something = 1; const AnotherThing = 2; } $thing = 'Something'; $id = ThingIDs::$thing; วิธีนี้ใช้ไม่ได้ มีวิธีที่ตรงไปตรงมาในการทำสิ่งที่เทียบเท่าหรือไม่? โปรดทราบว่าฉันติดอยู่กับชั้นเรียน มันอยู่ในห้องสมุดฉันไม่สามารถเขียนซ้ำได้ ฉันเขียนรหัสที่ใช้อาร์กิวเมนต์ในบรรทัดคำสั่งและฉันจะจริงๆเหมือนมันจะใช้ชื่อสัญลักษณ์แทนหมายเลขรหัส

10
คุณกำหนดคลาสของค่าคงที่ใน Java ได้อย่างไร?
สมมติว่าคุณจำเป็นต้องกำหนดคลาสซึ่งทั้งหมดนี้เป็นค่าคงที่ public static final String SOME_CONST = "SOME_VALUE"; วิธีที่ต้องการในการทำเช่นนี้คืออะไร? อินเตอร์เฟซ คลาสนามธรรม ชั้นสุดท้าย ฉันควรใช้อันไหนและทำไม? คำชี้แจงบางคำตอบ: Enums - ฉันจะไม่ใช้ enums ฉันไม่ได้แจกแจงอะไรเลยเพียงแค่รวบรวมค่าคงที่บางส่วนซึ่งไม่เกี่ยวข้องกัน แต่อย่างใด อินเทอร์เฟซ - ฉันจะไม่ตั้งคลาสใด ๆ เป็นคลาสที่ใช้อินเทอร์เฟซ ISomeInterface.SOME_CONSTเพียงแค่ต้องการที่จะใช้อินเตอร์เฟซที่จะเรียกค่าคงที่เช่นดังนั้น:
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.