通常狀況下Swit要想調用obj-c,c或c++代碼必須經過obj-c以及橋接文件才能夠辦到,可是使用
@_silgen_name
,能夠對於某些簡單的代碼,直接跳過橋接文件和.h頭文件與C代碼交互。php
#include <stdio.h> int add(int i, int j){ return i + j; } int mul(int i, int times){ return i * times; }
// 在全局做用域下進行聲明 // swift 2.2使用關鍵字@asmname import Foundation @_silen_name("add") func c_add(_ num1: Int, _ num2: Int) -> Int @_silgen_name("mul") func c_mul(_ num: Int, _ times: Int) -> Int // 調用函數 print(c_add(90, 23)) print(c_mul(3, 20)) // 結果 113 60