Я программирую в C++ для gta-модов. Поэтому я использую ScriptHook V.C++ typedefs сталкиваются с классами
В types.h есть это:
typedef DWORD Void;
typedef DWORD Any;
typedef DWORD uint;
typedef DWORD Hash;
typedef int Entity;
typedef int Player;
typedef int FireId;
typedef int Ped;
typedef int Vehicle;
typedef int Cam;
typedef int CarGenerator;
typedef int Group;
typedef int Train;
typedef int Pickup;
typedef int Object;
typedef int Weapon;
typedef int Interior;
typedef int Blip;
typedef int Texture;
typedef int TextureDict;
typedef int CoverPoint;
typedef int Camera;
typedef int TaskSequence;
typedef int ColourIndex;
typedef int Sphere;
typedef int ScrHandle;
И natives.h использует эти типы:
namespace PLAYER
{
static Ped GET_PLAYER_PED(Player player) { return invoke<Ped> (0x43A66C31C68491C0, player); } // 0x43A66C31C68491C0 0x6E31E993
static Ped GET_PLAYER_PED_SCRIPT_INDEX(Player player) { return invoke<Ped>(0x50FAC3A3E030A6E1, player); } // 0x50FAC3A3E030A6E1 0x6AC64990
...
Теперь я хотел сделать класс игрока. Но продолжайте получать именования конфликтов, и я не могу найти хорошее решение для их решения, а затем переименовать мои классы. Есть ли другой способ? Мои классы находятся в пространстве имен, но они конфликтуют.
Являются ли typedefs в пространстве имен? – NathanOliver
Независимо от того, 'typedef DWORD Void;' выглядит сомнительным? – Barry
нет, typedefs не находятся в пространстве имен – stulleman