Здравствуйте, kov_serg, Вы писали:
_>Можно еще вот так извернуться если не нравиться разные но одинаковые типы
_>https://godbolt.org/z/4ocTWszE5
template<class T> struct Info {
enum {
size=sizeof(T),
has_sign=(T)-1<0,
is_2complement=(1&(T)-1),
code=size*4+has_sign*2+is_2complement
};
};
template<int n>void fnc(const void* t) {
printf("fn<code=%d> size=%d sign=%d two_comliment=%d\n",n,n/4,(n>>1)&1,n&1);
}
template<class T>void fn(const T &t) { fnc<Info<T>::code>(&t); }
У тебя пробелы платные, что ли?