Saya bagian dari tim yang mengembangkan aplikasi iPad yang cukup besar dan ada banyak kelas berbeda yang telah kami buat sebagai hasilnya. Masalahnya adalah beberapa metode sekarang cukup usang dan saya tidak ingin menghapusnya karena saya tahu beberapa bagian dari keseluruhan sistem menggunakan metode ... tetapi ada varian yang lebih baik (baru) tersedia yang harus digunakan sebagai gantinya (beberapa yang lama benar-benar memanggil yang baru, tetapi keseluruhan antarmuka kelas menjadi berantakan).
Apakah ada cara di mana saya dapat menandai metode tertentu sebagai disusutkan (seperti @deprecated
di Jawa dan [Obsolete]
.NET).
Saya melihat bahwa Apple menggunakan Availability.h dan memiliki tag seperti
__OSX_AVAILABLE_BUT_DEPRECATED(__MAC_NA,__MAC_NA,__IPHONE_2_0,__IPHONE_3_0);
... apakah ini satu-satunya cara untuk melakukannya (+ apakah App Store aman untuk melakukan ini?) atau adakah alternatif yang akan menandai peringatan di Xcode?
sumber
__attribute__
sintaksis.#define __deprecated__ __attribute__((deprecated))
IMHO, lebih mudah untuk menulis __deprecated:
Bekerja juga di kelas
sumber
DEPRECATED_ATTRIBUTE
? Hanya karena lebih pendek atau ada perbedaan sebenarnya?Jika Anda ingin memberikan pesan tambahan dengan flag penghentian, Anda dapat menggunakan flag berikut.
Dengan menggunakan flag-flag yang disebutkan di atas, Anda dapat mengetahui mengapa Anda sudah ketinggalan zaman atau apa yang harus digunakan oleh pengembang metode di masa depan.
sumber
Untuk menandai metode yang sudah usang, gunakan __attribut __ ((usang ("Pesan Anda ada di sini")))
Contoh praktis, dari Mantle
sumber
Gunakan
deprecated
atribut:sumber