2

私はいくつかのデザイン関連の疑問を持っています。IOS アプリケーションで、C++ クラス (拡張子を .mm に変更) から任意のビューを作成したい場合、それは可能ですか?

前もって感謝します。

4

1 に答える 1

0

はい、可能です。30個の.mmファイルがあり、.mファイルがないOSXアプリを開発しています。ただし、.mmファイルはObjective-C ++であり、C ++(.cpp)ではありません。

cppclass.hこれは、Objective-C ++クラス(で定義/宣言)内でC ++クラス(で定義)を使用する例ですmmclass.{h,mm}

cppclass.h:

#include <string>

class MyCppClass
{
protected:
    std::string _name;

public:
    MyCppClass() :
        _name()
    {
    }

    void setName(const std::string &name)
    {
        _name = name;
    }
};

mmclass.h:

#import <Foundation/Foundation.h>
#import "cppclass.h"

@interface MyMMClass : NSObject
{
    MyCppClass _myCppClass;
}

@end

mmclass.mm:

#import "mmclass.h"

@implementation MyMMClass

- (id)init
{
    self = [super init];
    if (self != nil)
    {
        _myCppClass.setName("Andy");
    }
    return self;
}

@end
于 2012-07-27T06:41:42.363 に答える