Estás viendo esto porque NSString es un clúster de clase. Consulte los documentos de Apple here para obtener una explicación general, y here para obtener notas específicamente sobre la subclasificación de NSString. Básicamente, NSString es una clase abstracta sin método de almacenar caracteres, y los diversos métodos -initWith ... devuelven diferentes subclases concretas de NSString en función del método de inicialización. Normalmente, cuando usa NSString, esto es completamente transparente. Sin embargo, si desea subclase NSString, al menos debe implementar los métodos base (-length, y -characterAtIndex :) más cualquier método de inicialización que quiera tener (además, obviamente, tiene una forma de almacenar los caracteres de la cadena)
Si solo desea agregar funcionalidad a NSString, las subclases generalmente no son necesarias. Primero, debe verificar si una categoría, o una función que opera en un NSString, o un método en una clase que contiene el NSString funcionará mejor. Por ejemplo, vea RegexKit o Google Toolbox For Mac, ambos implementan soporte de expresiones regulares usando una categoría en NSString.
¿Cómo asignó esta instancia? –
Muestra tu código. –