I have read the Why can templates only be implemented in the header file? and Why can’t I separate the definition of my templates class from its declaration and put it inside a .cpp file?
If I create the templates then I am to provide access also to their cpp
-files additionally to their h
-files, or write the definitions directly in the header file.
Therefore, if I want to allow to use fully my templates in other applications, then I can't hide their implementation from outside eyes (for protection of intellectual property). Am I right?