Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Mentakrifkan Makro Prapemproses dengan Berkesan dalam CMake?

Bagaimana untuk Mentakrifkan Makro Prapemproses dengan Berkesan dalam CMake?

DDD
Lepaskan: 2024-11-30 07:01:15
asal
801 orang telah melayarinya

How to Effectively Define Preprocessor Macros in CMake?

Mentakrifkan Makro Prapemproses dengan CMake

Mentakrifkan pembolehubah prapemproses dengan CMake telah berkembang dari semasa ke semasa. Mari kita terokai cara melakukannya dengan berkesan.

add_definitions

Sebelum ini, CMake bergantung terutamanya pada arahan add_definitions untuk tujuan ini. Kod C yang setara ialah #define foo.

add_definitions(OPENCV_VERSION=${OpenCV_VERSION} WITH_OPENCV2)
Salin selepas log masuk

add_compile_definitions

Walau bagaimanapun, bermula dengan CMake versi 3.12, arahan add_compile_definitions menawarkan pendekatan yang lebih halus. Ia secara khusus menyasarkan penyusunan definisi, memisahkannya daripada termasuk direktori dan pilihan pengkompil.

add_compile_definitions(OPENCV_VERSION=${OpenCV_VERSION})
add_compile_definitions(WITH_OPENCV2)
Salin selepas log masuk

Faedah add_compile_definitions

Pendekatan yang lebih baharu ini menghapuskan keperluan untuk helah yang sering digunakan dengan tambah_takrifan. Ia menyediakan cara yang lebih tersusun dan rawan ralat untuk mengurus definisi penyusunan.

Takrifan Khusus Sasaran

Seperti yang Jim Hunziker nyatakan, anda juga boleh mentakrifkan makro prapemproses pada asas setiap sasaran. Rujuk jawapannya untuk butiran lanjut.

Atas ialah kandungan terperinci Bagaimana untuk Mentakrifkan Makro Prapemproses dengan Berkesan dalam CMake?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan