gpt4 book ai didi

c++ - 从 Objective-C 类调用 C++ 构造函数

转载 作者:可可西里 更新时间:2023-11-01 17:37:13 32 4
gpt4 key购买 nike

如何从 Objective-C 类中调用 C++ 构造函数?

class CppClass {
public:
CppClass(int arg1, const std::string& arg2): _arg1(arg1), _arg2(arg2) { }

// ...
private:
int _arg1; std::string _arg2;
};

@interface ObjC: NSObject {
CppClass _cppClass;
}
@end

@implementation ObjC

- (id)init
{
self = [super init];
if ( self )
{
// what is the syntax to call CppClass::CppClass(5, "hello") on _cppClass?
}
return self;
}
@end

最佳答案

当我最终遇到默认构造函数没有削减它的情况时,我将实例变量设为指针,然后在 init 方法中使用 newdeletedealloc方法中。

实际上,为 Objective-C 实例变量调用默认构造函数是相对较新的事情。

没有 Objective-C 语言的规范,更不用说 Objective-C++ 扩展的规范了。 Apple 确实发布了一份名为 The Objective-C Programming Language 的文件,但它几乎没有提到 C++,所以当你需要澄清一些不明显的事情时,你常常只能靠自己了。 Clang 的人mailing list不过,通常情况下了解得更多。

关于c++ - 从 Objective-C 类调用 C++ 构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12467341/

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