object-c 混编 调用C,C++接口

xcode 支持 object-c 混编,在object-c 中调用c,c++接口

第一步 定义c语言 接口(File.c)

#include <stdio.h>
void printsByC(){
    printf("调用C语言。");
}

第二步 定义c++ 接口

student.h文件

#ifndef __test_hun__student__
#define __test_hun__student__

#include <iostream>

#endif /* defined(__test_hun__student__) */

student.cpp文件

#include "student.h"
using namespace std;

class Student{
public:
    void getWeight(){
        cout<<"Object C与C++混合编程。体重为:"<<weight<<"kg";
        printf("调用C++语言。getWeight");
    }
    void setWeight(int x){
        weight = x;
        printf("调用C++语言。setWeigth");
    }
    
private:
    int weight;
};

第三步 将 object-c  implementation文件名 .m 改称.mm 告诉编译器 混编

下面的例子是 object-c 调用接口

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    printf("调用C语言。");
    Human human;
    human.setWeight(26);
    human.getWeight();
    
    Student *student=new Student();
    student->getWeight();
    delete student;
}
原文地址:https://www.cnblogs.com/macroxu-1982/p/3180975.html