swift - Error Cannot invoke initilizer of type 'Box<T>' -


why not allowed?

class box<t>{     let value: t     init(_ value:t){         self.value = value     }      func map<u>( f: t -> u)->box<u>{         return box(f(self.value))     } } 

error @ return box(f(self.value)):

error : cannot invoke initilizer of type 'box<t>' argument list of type '(u)'

you have specify type box object you're returning:

class box<t> {     let value: t     init(_ value:t){         self.value = value     }      func map<u>(f: (t) -> (u)) -> box<u> {         return box<u>(f(self.value))     } } 

within context of box<t> class implementation, references box assumed box<t> unless explicitly specify type (as did box<u>, in return statement, above).


Comments

Popular posts from this blog

java - Custom OutputStreamAppender not run: LOGBACK: No context given for <MYAPPENDER> -

java - UML - How would you draw a try catch in a sequence diagram? -

c++ - No viable overloaded operator for references a map -