Каков синтаксис для использования __bridge cast в сочетании со static_cast?

Я попробовал ниже, но компилятор этого не понимает:

//Foo.mm
id anObjOfTypeFoo;
Foo* obj = (Foo*) anObjOfTypeFoo; //ERROR: must use __bridge

Foo* obj = (__bridge Foo*) anObjOfTypeFoo; //OKAY

Foo* obj = static_cast<__bridge Foo*> (anObjOfTypeFoo); //ERROR

Foo* obj = __bridge (static_cast<Foo*> (anObjOfTypeFoo)); //ERROR

Поскольку код Objective C эффективно компилируется компилятором C ++ для модуля компиляции .mm, у него действительно не должно быть проблем с соединением приведений C ++. Может кто-нибудь пролить свет на это, пожалуйста?

1

Решение

Жаль, что static_cast пришел из C ++, он не понимает классы Objective-C. Вы не можете даже из NSString в NSMutableString,

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]