Pertanyaan yang diberi tag c-preprocessor

99
Pragma dalam mendefinisikan makro

Apakah ada cara untuk menyematkan pernyataan pragma di makro dengan pernyataan lain? Saya mencoba mencapai sesuatu seperti: #define DEFINE_DELETE_OBJECT(type) \ void delete_ ## type_(int handle); \ void delete_ ## type(int handle); \ #pragma weak delete_ ## type_ = delete_ ## type Saya...

94
Mengapa makro preprocessor jahat dan apa alternatifnya?

Saya selalu menanyakan hal ini tetapi saya tidak pernah menerima jawaban yang benar-benar bagus; Saya pikir hampir semua programmer bahkan sebelum menulis "Hello World" yang pertama telah menemukan frase seperti "makro tidak boleh digunakan", "makro jahat" dan seterusnya, pertanyaan saya adalah:...

15
Hitung baris file sumber menggunakan makro?

Apakah mungkin, menggunakan preprocessor C / C ++, untuk menghitung baris dalam file sumber, menjadi makro atau semacam kompilasi-nilai waktu yang tersedia? Misalnya saya bisa mengganti MAGIC1, MAGIC2dan MAGIC3berikut ini, dan mendapatkan nilai 4 entah bagaimana saat menggunakan MAGIC3? MAGIC1 //...