Hello,
Below code works fine on 32bit platform but crashed for 64bit platform.
#include <iostream>
#include<string>
#include<Windows.h>
using namespace std;
class CStroageClass
{
std::string name;
int number;
public:
CStroageClass(): name("prxy"), number(20)
{
}
void PrintName() { std::cout << "name:" << name << std::endl; }
void PrintNumber() { std::cout << "number:" << number << std::endl; }
};
int main()
{
CStroageClass * obj = new CStroageClass;
cout << obj << std::endl;
unsigned long ul = PtrToUlong(obj);
std::cout << "UL:" << ul << std::endl;
CStroageClass* so = reinterpret_cast<CStroageClass*>(ULongToPtr(ul));
cout << so << std::endl;
so->PrintName();
so->PrintNumber();
return 0;
}
How to resolve such error's ?