Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #ifndef TEMPLATE_LIBRARY_H
- #define TEMPLATE_LIBRARY_H
- #include <string>
- struct Papper;
- template<class T>
- class Record;
- template<typename T>
- std::ostream& operator<<(std::ostream& os, const Record<T>& record){
- os << record.Object;
- return os;
- }
- template<typename T>
- class Record{
- protected:
- T Object;
- size_t Count;
- friend std::ostream& operator<< <>(std::ostream& os, const Record<T>& record);
- public:
- T GetObject() const;
- template<class U>
- void TemplateMethod(const U& data);
- };
- template<typename T>
- template<class U>
- void Record<T>::TemplateMethod(const U& data){
- }
- template<typename T>
- T Record<T>::GetObject()const{
- return Object;
- }
- struct Papper{
- std::string Format;
- std::string Color;
- };
- std::ostream& operator<<(std::ostream& os, const Papper& paper){
- os << paper.Format << "" << paper.Color;
- return os;
- }
- //template<typename T>
- //std::ostream& operator<<(std::ostream& os, const Record<T>& record){
- // os << record.Object;
- // return os;
- //}
- #endif //TEMPLATE_LIBRARY_H
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement