Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- template <typename T>
- class ExtendedType
- {
- public:
- T object;
- ExtendedType(const T & source) : object(source){std::cout<<"konstruktor przyjmujacy stala referencje do T\n";}
- ExtendedType(T && source) : object(std::move(source)){std::cout<<"konstruktor przenoszacy: "<<object<<"\n";}
- ...
- }
- class Foo
- {
- public:
- ExtendedType<int> obj;
- Foo(int x = 1234) : obj(x){std::cout<<"domyslny Foo \n";}
- ...
- }
- int main()
- {
- Foo a(5); // wypisuje: konstruktor przyjmujacy stala referencje do T
- ExtendedType<int> b(10); // wypisuje: konstruktor przenoszacy obiekt: 10
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement