1.ウィザードで作成したViewController.h、ViewController.mのファイル名を
それぞれViewController.hh、ViewController.mmに変更、それに合わせてimportを修正
2.ViewController.mmはボタンを押下時に、ラベルに"Hello"を設定できるようにしていたのを、C++のメソッドで取得した値をセットするように修正
【ViewController.mm 修正前】
#import "ViewController.hh"
#import "sample.hh"
@interface ViewController ()
@end
@implementation ViewController
- (IBAction)tapBtn
{
myLabel.text = @"Hello";
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}
@end
- (IBAction)tapBtn
{
// myLabel.text = @"Hello";
Sample sample;
// sample.hello();
char* cp = sample.getHello();
// char*からNSString*への変換
myLabel.text = [NSString stringWithCString: cp encoding:NSUTF8StringEncoding];
}
#ifndef helloCpp_sample_hh
#define helloCpp_sample_hh
class Sample
{
public:
Sample (void);
virtual ~Sample ();
public:
char* getHello (void);
};
#endif
#include
#import "sample.hh"
Sample::Sample (void) {
printf ("Sample::Sample\n");
}
Sample::~Sample () {
printf ("Sample::~Sample\n");
}
char* Sample::getHello (void) {
return "Hello!! My Cpp Class\n";
}
0 件のコメント:
コメントを投稿