13
Tutaj mam metodę kodowania ciągu znaków (jest niekompletna), a moim problemem jest błąd: "Blokuj wskaźnik do typu niefunkcyjnego jest nieprawidłowy""Wskaźnik bloku do typu niefunkcyjnego jest nieprawidłowy"
+ (NSString *)encodeString: (NSString *)string {
__block int indexShift;
__block NSString *dictionary = @"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
__block NSString *encodeDictionary = @"mahgbcjdfukripylswxovzetqnFMAJWGCQYXLOETPBKSVNIZUHDR";
__block NSString *encodeString = @"";
void (^encode) = ^{ // Error here, "Block pointer to non-function type is invalid"
for (int x = 0; x < string.length; x++) {
int index = [dictionary indexOf:[string characterAtIndex:x]];
indexShift += index;
encodeString = [encodeString stringByAppendingFormat:@"%c", [encodeDictionary characterAtIndex:index+indexShift]];
}
};
return encodeString;
}
Proszę mi powiedzieć, dlaczego tak się dzieje lub co muszę zmienić, aby to naprawić.
yup, że zrobił to – Wrsford
Ostateczny zestaw nawiasach jest opcjonalne. Możesz po prostu "^ {}", jeśli typ bloku nie przyjmuje żadnych argumentów. –