Disclaimer: The following question probably is so easy that I might be shocked seeing the first answer. Furthermore, I want to apologize for any duplicate questions - syntac
obj.bar<double>(1,2); // This line is faulty.
The template
keyword is required here, as obj
is an instance of a type Foo<T>
which depends on the template parameter T
, and so the above should be written as:
obj.template bar<double>(1,2); //This line is corrected :-)
Read @Johannes's answer here for detail explanation:
As so often: Once the question was posted, the answer came all by itself. Correcting the faulty line to
return obj.template bar<double>(1,2);
yields the expected results.
Thanks for reading...
Could this be a case of foo.template bar‹ double >
?