Здравствуйте, GhostCoders, Вы писали:
GC>Пишу кроссплатформенное приложение.
GC>Есть некая функция, с перегрузкой для разных типов, int, unsigned int, size_t, ptrdiff_t, std::string и т.д.
GC>GC>void SomeFunc(int value)
GC>{ ...
GC>}
GC>void SomeFunc(unsigned int value)
GC>{ ...
GC>}
#if defined (_MSC_VER)
GC>void SomeFunc(size_t value)
GC>{ ...
GC>}
#endif
GC>void SomeFunc(std::string value)
GC>{ ...
GC>}
GC>
GC>Для Windows x64 (VS2012) все собирается и работает.
GC>А вот для Linux (CentOS 6 x32) — не собирается. Потому что здесь size_t является всего-лишь псевдонимом для unsigned int.
GC>Естесственно, пишет ошибку что SomeFunc() уже определена для unsigned int.
GC>Какое подскажите решение?