Tools and libraries to glue C/C++ APIs to high-level languages
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

59 lines
1.0 KiB

#include "../Tests.h"
#include <string>
#pragma once
class DLL_API SecondaryBase
{
public:
enum Property
{
P1,
P2
};
enum Function
{
M1,
M2
};
virtual void VirtualMember();
int property();
void setProperty(int value);
void function(bool* ok = 0);
typedef void HasPointerToEnum(Property* pointerToEnum);
HasPointerToEnum* hasPointerToEnum;
protected:
void protectedFunction();
int protectedProperty();
void setProtectedProperty(int value);
};
void DLL_API functionInAnotherUnit();
struct DLL_API ForwardDeclaredStruct;
struct DLL_API DuplicateDeclaredStruct;
template <typename T>
class DLL_API TemplateInAnotherUnit
{
T field;
};
class ForwardInOtherUnitButSameModule
{
};
class DLL_API MultipleInheritance : ForwardInOtherUnitButSameModule, SecondaryBase
{
public:
MultipleInheritance();
~MultipleInheritance();
};
namespace HasFreeConstant
{
extern const int DLL_API FREE_CONSTANT_IN_NAMESPACE;
extern const std::string DLL_API STD_STRING_CONSTANT;
}