4
โอเวอร์โหลดฟังก์ชันโดยใช้เทมเพลต
ฉันพยายามกำหนดฟังก์ชั่นโดยใช้เทมเพลตและฉันต้องการให้ typename เป็น int หรือ anEnum (enum เฉพาะที่ฉันกำหนดไว้) ฉันได้ลองทำสิ่งต่อไปนี้แล้ว แต่ล้มเหลว: template <int | anEnum T> // or <int T, anEnum T> or <int, anEnum T> bool isFunction(const T &aVariable){} สิ่งที่ฉันพยายามทำคือใช้เทมเพลตแทนการกำหนดฟังก์ชั่นโอเวอร์โหลดสองฟังก์ชัน ฉันต้องการฟังก์ชั่นที่จะเรียกว่าต่อไปนี้โดยไม่ต้องโปรแกรมเมอร์ต้องพิจารณาประเภท isFunction(aVariable) // and not isFunction<int> (aVariable) nor isFunction<anEnum> (aVariable) โดยทั่วไปฉันต้องการให้ฟังก์ชั่นนี้เป็นเทมเพลตสำหรับประเภท int และ aNum ฉันค้นหาสิ่งนี้แล้ว แต่ไม่พบคำตอบ ฉันจะพลาดอะไรได้บ้าง ขอบคุณ,