假如有个OC类OCViewController : UIViewController
类里有两个方法

//swift调用oc或c的混编是比较常用的,反过来的调用很少.这里只写了swift调用oc和c的方式.
//OC函数声明
- (void)testOC;
//C函数声明
void testc();

实现:
void testc()
{
  printf("testc.....................");
}

-(void)testOC
{
  NSLog(@"\ntestOC.........................");
}

 

在swift项目中加入OC类,系统会自动生成一个.h文件,名为:项目名-Bridging-Header.h

在这里面引入OC/C类的头文件
#import "OCViewController.h"

 

这样就可以直接使用了

class ViewController: UIViewController {
  override func viewDidLoad() {
    super.viewDidLoad()
    //实例化类
    var ocVC = OCViewController()
    //swift调用OC函数
    ocVC.testOC()
    
    //swift直接调用C函数
    testc()
    
    // Do any additional setup after loading the view, typically from a nib.
  }
}