Virtual function table not found

What's wrong with this, and how can I make it better?

//Code

class te{
public:
  static class ted t;
  virtual void f1(void)=0;
  virtual void f2(void);
};

class ted:public te{
public:
  void f1(void);};

ted te::t;

void main(void){}


Undefined                       first referenced
 symbol                             in file
te virtual table                    te.o
ted virtual table                   te.o
LVL 1
glebspyAsked:
Who is Participating?
 
MadYugoslavCommented:
Sutisfy this two rules:
1. You must implement all functions for an instance of class. You can not make instance of class if that class don't have implementations for all methods (functions).
2. You can not make instance of some class with pure virtual methods (functions).
0
 
jasonclarkeCommented:
Do you actually have implementations for the f1() and f2()? i.e. is there something else besides this file.
0
 
MichaelSCommented:
>class te{
>public:
>static class ted;

>class ted:public te

That one I really can't get. What are you trying to do?

class ted derived from te which contains ted which derived from te which contains ted.......

Is it some Recurcive derivation?
0
 
MadYugoslavCommented:
Sutisfy this two rules:
1. You must implement all functions for an instance of class. You can not make instance of class if that class don't have implementations for all methods (functions).
2. You can not make instance of some class with pure virtual methods (functions).
0
 
glebspyAuthor Commented:
Thanks, that did it-
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.