В Objective-C у меня есть действительный код:
TestTwo.h:
@interface TestTwo : NSObject
-(void)test;
@end
TestTwo.m:
@implementation TestTwo
-(void)test
{
void (^d_block)(void) =
^{
int n;
};
}
@end
Что я действительно хочу, так этокласс Objective C ++, который определяет метод, подобный test
.Это упрощение, но иллюстрирует намерение.Итак, в Objective-C ++ у меня есть:
Test.h:
class Test
{
public:
void TestIt();
};
Test.mm:
#include "Test.h"
void Test::TestIt()
{
void (^d_block)(void) =
^{
int n;
};
}
Я получаю следующую ошибку:
ошибка: int Test :: n не является статическим членом класса Test.
Если я удалю int n;
, ошибки не будет.Как мне определить n
внутри блока в этом контексте?