pykd/test/targetapp/types.cpp
SND\kernelnet_cp 8e3cadb082 [test] added : testNestedStruct
git-svn-id: https://pykd.svn.codeplex.com/svn@69275 9b283d60-5439-405e-af05-b73fd8c4d996
2011-08-24 14:41:53 +00:00

132 lines
2.1 KiB
C++

#include "stdafx.h"
#include <string>
///////////////////////////////////////////////////////////////////////////////
// áàçîâûé òèïû
char charVar = -100;
unsigned char ucharVar = 200;
///////////////////////////////////////////////////////////////////////////////
struct Type1 {
char field1;
unsigned char field2;
double field3;
};
Type1 var1 = { -121, 220, 1.0095f };
///////////////////////////////////////////////////////////////////////////////
enum Enum1 {
Enum1Val1 = 100,
Enum1Val2 = 200,
Enum1Val3 = 300
};
struct Type2 {
Enum1 field1;
};
Type2 var2 = { Enum1Val1 };
///////////////////////////////////////////////////////////////////////////////
namespace Namespace1 {
class Class1 {
public:
Class1( unsigned long v1 ) :
m_field1( v1 )
{}
private:
unsigned long m_field1;
};
Class1 var3( 50 );
namespace Namespace2 {
class Class2 {
public:
Class2( const std::string &str ) :
m_field1 ( str )
{}
private:
std::string m_field1;
};
Class2 var4( "hello" );
};
};
///////////////////////////////////////////////////////////////////////////////
namespace Namespace3
{
template<typename T>
class Class3
{
public:
Class3(T val): m_field1 (val)
{
}
private:
T m_field1;
};
Class3<int> var5(5);
};
///////////////////////////////////////////////////////////////////////////////
#pragma pack( push, 4 )
struct Type4
{
int field1;
struct {
int field2;
int field3;
};
struct {
int field41;
} field4;
};
Type4 var4 = {};
#pragma pack( pop )
///////////////////////////////////////////////////////////////////////////////