199451b44SJordan Rupprecht #include <cstring> 299451b44SJordan Rupprecht 399451b44SJordan Rupprecht template <typename T> 499451b44SJordan Rupprecht class Foo 599451b44SJordan Rupprecht { 699451b44SJordan Rupprecht public: Foo()799451b44SJordan Rupprecht Foo () : object() {} Foo(T x)899451b44SJordan Rupprecht Foo (T x) : object(x) {} getObject()999451b44SJordan Rupprecht T getObject() { return object; } 1099451b44SJordan Rupprecht private: 1199451b44SJordan Rupprecht T object; 1299451b44SJordan Rupprecht }; 1399451b44SJordan Rupprecht 1499451b44SJordan Rupprecht main(int argc,char const * argv[])1599451b44SJordan Rupprechtint main (int argc, char const *argv[]) 1699451b44SJordan Rupprecht { 1799451b44SJordan Rupprecht Foo<int> foo_x('a'); 1899451b44SJordan Rupprecht Foo<wchar_t> foo_y(L'a'); 1999451b44SJordan Rupprecht const wchar_t *mazeltov = L"מזל טוב"; 2099451b44SJordan Rupprecht wchar_t *ws_NULL = nullptr; 2199451b44SJordan Rupprecht wchar_t *ws_empty = L""; 2299451b44SJordan Rupprecht wchar_t array[200], * array_source = L"Hey, I'm a super wchar_t string, éõñž"; 2399451b44SJordan Rupprecht wchar_t wchar_zero = (wchar_t)0; 2499451b44SJordan Rupprecht memcpy(array, array_source, 39 * sizeof(wchar_t)); 25*53eece04SRaphael Isemann return 0; // break here 2699451b44SJordan Rupprecht } 27