gpt4 book ai didi

c++ - Objective-C - 为 C++ 函数创建包装文件?

转载 作者:太空狗 更新时间:2023-10-29 21:44:35 24 4
gpt4 key购买 nike

我要为我的 Objective-C 代码编写大量 C++ 函数(由于第三方函数)。我认为通过在 Objective-C 代码和 C++ 代码之间设置一个中间的 Objective-C++ 文件包装器来抽象出 C++ 代码可能是个好主意。我目前拥有的布局是 ViewController.m 文件创建我的包装器 Objective-C++ 类的实例。这个类调用它的实例方法,而实例方法又调用 C++ 代码。下面给出了一个简单的版本。这是一个不好的方法吗?有没有更合适的方法来解决这个问题?对代码的任何其他批评?非常感谢!

ViewController.m

#import "ViewController.h"
#import "CppWrapper.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad
{
[super viewDidLoad];
CppWrapper *wrap = [[CppWrapper alloc] init];
double n = 5;
n = [wrap cppTimesTwo:n];
}

- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
}

@end

CppWrapper.mm

#import "CppWrapper.h"
#import "Cpp.h"

@implementation CppWrapper

- (double)cppTimesTwo:(double) number
{
return timesTwo(number);
}

@end

Cpp.cpp

#include "Cpp.h"

double timesTwo(double number)
{
return 2 * number;
}

最佳答案

我们在一个项目中做了同样的事情来重用一些C源代码并且它工作得很好。我认为这是一个很好的方法。

关于c++ - Objective-C - 为 C++ 函数创建包装文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19695852/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com