You can only forward-declare a protocol in the same header file for usage in method return values or parameter types. In your case you want the class to conform to the protocol, so it won't work since it defines behavior that will be added to the class itself (i.e. the methods it will respond to).
Therefore, you must #import
the protocol. For this reason, it is probably a good idea to split the protocol and class up into separate files. See this answer for more information.