Hi,

I have a problem in qt list serialization.

I am getting error no match for operator '>>' in s '>>' t (from qdatastream.h). I also tried declaring meta but not use.


Qt Code:
  1. class CustomClass
  2. {
  3. QString name;
  4. QDataStream &operator<<(QDataStream &out, const CustomClass& myClass)
  5. {
  6. out<<myClass.name;
  7. return out;
  8. }
  9. QDataStream &operator>>(QDataStream& in,CustomClass& myClass)
  10. {
  11. in>>myClass.name;
  12. return in;
  13. }
  14. }
  15. Q_DECLARE_METATYPE(CustomClass*);
  16.  
  17. class CustomClass2
  18. {
  19. QList<CustomClass> list;
  20. QDataStream &operator<<(QDataStream &out, const CustomClass2& myClass)
  21. {
  22. out<<myClass.list;
  23. return out;
  24. }
  25. QDataStream &operator>>(QDataStream& in,CustomClass2& myClass)
  26. {
  27. in>>myClass.list;
  28. return in;
  29. }
  30. };
To copy to clipboard, switch view to plain text mode 
Without the meta tag declaration 'Q_DECLARE_METATYPE(CustomClass*);'. it says no match for operator '>>' and '<<' myClass.list

Please help.


Development in,
Qt SDK for Nokia