1
ผ่านตัวชี้ฟังก์ชั่นจากอาร์เรย์ของตัวชี้ฟังก์ชั่นเป็นอาร์กิวเมนต์แม่แบบ
ฉันต้องการผ่านตัวชี้ฟังก์ชั่นจากอาร์เรย์ของตัวชี้ฟังก์ชั่นเป็นอาร์กิวเมนต์แม่แบบ รหัสของฉันดูเหมือนว่าจะรวบรวมโดยใช้ MSVC แม้ว่า Intellisense บ่นว่ามีบางอย่างผิดปกติ ทั้ง gcc และ clang ไม่สามารถคอมไพล์โค้ดได้ ลองพิจารณาตัวอย่างต่อไปนี้: static void test() {} using FunctionPointer = void(*)(); static constexpr FunctionPointer functions[] = { test }; template <FunctionPointer function> static void wrapper_function() { function(); } int main() { test(); // OK functions[0](); // OK wrapper_function<test>(); // OK wrapper_function<functions[0]>(); …