mardi 4 août 2020

Candidate template ignored: couldn't infer template argument 'T'

I know this question probably has been asked before but I'm a beginner to templates, and here is my code,

HeaderFile.h

class Identity  {
    public:    
        template <typename T>
        T getFamilyMembers() {
            if(1) {
              return false;
            }
            std::string whatever = "Test";
            return whatever;
        }
};

Main.cpp

#include "HeaderFile.h"

int main() {
  Identity id;
  std::cout << id.getFamilyMembers() << "\n";
}

Compiler issue two errors,

Main.cpp:25:10: error: no matching member function for call to 'getFamilyMembers'
      id.getFamilyMembers();
      ~~~^~~~~~~~~~
HeaderFile.h:22:11: note: candidate template ignored: couldn't infer template argument 'T'
        T getFamilyMembers() {

Aucun commentaire:

Enregistrer un commentaire