อะไรคือความแตกต่างระหว่าง*.pro
และ*.pri
ไฟล์กำหนดค่าสำหรับ qmake?
สิ่งที่ควรเข้าสู่ไฟล์ * .pro และสิ่งที่ควรเข้าสู่ไฟล์ * .pri
อะไรคือความแตกต่างระหว่าง*.pro
และ*.pri
ไฟล์กำหนดค่าสำหรับ qmake?
สิ่งที่ควรเข้าสู่ไฟล์ * .pro และสิ่งที่ควรเข้าสู่ไฟล์ * .pri
คำตอบ:
.pro
ไฟล์คือสิ่งที่คุณจะวิ่ง qmake บน .pri
ไฟล์รวมอยู่ด้วย.pro
ไฟล์ นอกเหนือจากนั้นไม่มีความแตกต่างระหว่างทั้งสองมากนัก
ตัวอย่างการใช้งานอาจเป็นได้หากคุณมีงานสร้างที่แตกต่างกันซึ่งต้องการตัวเลือกที่แตกต่างกัน คุณสามารถใส่ข้อมูลที่แชร์ใน. pro ในขณะที่เลื่อนตัวเลือกไปยังไฟล์. pri ต่างๆ บิตข้อมูลเพิ่มเติมแม้จะเป็นที่ยอมรับไม่ได้มากขึ้น, สามารถพบได้ที่นี่
มีความแตกต่างหลักอย่างหนึ่งระหว่างการใช้ซ้ำเป้าหมาย:
นี้มักจะเรียกว่าไฟล์โครงการ
นี้มักจะเรียกว่าโครงการรวมไฟล์
ดังที่คุณเห็นในชื่อของพวกเขาความแตกต่างที่สำคัญคือ.pri
ไฟล์ควรจะรวมไฟล์ ซึ่งคล้ายกับการรวมโมดูลในภาษาโปรแกรมเพื่อแบ่งปันการทำงานโดยพื้นฐานแล้ว
คุณจะสามารถเขียนการตั้งค่าและโค้ดทั่วไปลงใน.pri
ไฟล์เหล่านั้นและรวมไว้จาก.pro
ไฟล์ต่างๆได้ตามต้องการ นี่คือวิธีที่คุณจะใช้ในทางปฏิบัติ:
FOO = BAR
...
include($$PWD/foo.pri)
...
...
include($$PWD/foo.pri)
...
วิธีนี้คนธรรมดาสามัญจะสามารถใช้ได้ทั้งในเช่นเดียวกับhello.pro
world.pro
มันไม่ได้สร้างความแตกต่างมากนักในสถานการณ์นี้ แต่เมื่อฟังก์ชันการทำงานที่ใช้ร่วมกันใช้งานได้นานขึ้นจะช่วยให้คุณประหยัดงานเขียนเช่นเดียวกับการซิงค์การแก้ไขข้อบกพร่องและอื่น ๆ
คุณสามารถรวม.pri
ไฟล์ไว้ใน.pri
ไฟล์อื่นได้หากต้องการ คุณยังสามารถรวม.pri
ไฟล์ไว้ในโปรเจ็กต์ย่อยอื่น ๆ ได้อีกด้วยเป็นอะไรที่ดีมาก
อย่างไรก็ตามไวยากรณ์เหมือนกันสำหรับทั้งไฟล์.pro
และ.pri
ไฟล์ ในท้ายที่สุดคุณจะวิ่ง qmake ใน.pro
ไฟล์และยังเป็นสิ่งที่สร้าง qmake qmake -project
สำหรับคุณถ้าคุณไม่ได้มีไฟล์โครงการที่มีอยู่และคุณตั้งใจที่จะใช้
คุณสามารถอ่านเพิ่มเติมเกี่ยวกับฟังก์ชันรวมได้ที่นี่ :
รวม (ชื่อไฟล์)
รวมเนื้อหาของไฟล์ที่ระบุโดยชื่อไฟล์ลงในโปรเจ็กต์ปัจจุบัน ณ จุดที่รวมไฟล์ ฟังก์ชันนี้จะสำเร็จหากรวมชื่อไฟล์ไว้ มิฉะนั้นจะล้มเหลว ไฟล์ที่รวมจะถูกประมวลผลทันที
คุณสามารถตรวจสอบว่าไฟล์ถูกรวมหรือไม่โดยใช้ฟังก์ชันนี้เป็นเงื่อนไขสำหรับขอบเขต
เพียงแค่ว่าจะแล้วเสร็จนอกจากนี้ยังมี.prf
โครงการคุณสมบัติของไฟล์และ.prl
โครงการLinkerไฟล์แต่เป็นผู้ใช้คุณไม่จำเป็นต้องจัดการกับที่สำหรับตอนนี้
รูปแบบของ.pri
ไฟล์เหมือนกับรูปแบบของ.pro
ไฟล์ทุกประการ ความแตกต่างที่สำคัญคือเจตนาอย่างหนึ่ง a .pro คือสิ่งที่คนส่วนใหญ่คาดหวังให้รัน qmake โดยตรงในขณะที่. pri จะรวมอยู่ใน. pro เมื่อคุณสั่งให้ qmake รวมไฟล์อื่นมันจะประมวลผลคำสั่งในไฟล์นั้นราวกับว่ามันอยู่ในไฟล์ปัจจุบัน
สำหรับการอ้างอิง: * .pro vs * .pri