前向声明和参数化类

时间:2018-09-13 23:33:08

标签: ios objective-c

我有一个参数化的类,让我们称之为ParameterizedClass。当我在使用前向声明(@class ParameterizedClass;的头文件中使用它时,如果我声明属性Type arguments cannot be applied to non-parameterized class 'ParameterizedClass',则编译器将输出此错误ParameterizedClass<Type>

如何在不使用类头的情况下仍使用前向声明的同时使用参数?

1 个答案:

答案 0 :(得分:1)

如果我正确理解,您尝试在标头中声明类型为ParameterizedClass<Type>的属性,并且编译器会抱怨,因为它知道的所有唯一ParameterizedClass声明都是非参数化的(即{{ 1}}。)

我建议您将前向声明更改为@class ParameterizedClass;

然后,您可以声明您的财产: @class ParameterizedClass<T>;