/
niceSOFT
/
swig
Обзор
Документация
Войти
/
niceSOFT
/
swig
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Examples/test-suite/template_construct.i
43 строки
797 B
William S Fulton
Constructors and destructors declared with template parameters
18 июл 2023, 21:29
18 июл 2023, 21:29
2ff9da0
Код
Авторство
О чём код?
%module template_construct // Tests templates to make sure an extra <> in a constructor and destructor is ok. %inline %{ template<class T> class Foo { T y; public: #ifdef SWIG Foo<T>(T x) : y(x) { } ~Foo<T>() {} #else // Modern compilers (C++20) reject this, so feed the compiler the corrected version Foo(T x) : y(x) { } ~Foo() {} #endif }; %} %template(Foo_int) Foo<int>; %inline %{ template<> class Foo<short> { short y; public: #ifdef SWIG Foo<short>(short x) : y(x) { } Foo<short>() : y(0) { } virtual ~Foo<short>() {} #else // Modern compilers (C++20) reject this, so feed the compiler the corrected version // version. Foo(short x) : y(x) { } Foo() : y(0) { } virtual ~Foo() {} #endif }; %} %template(Foo_short) Foo<short>;