阿海,海,在C++类中做指针数学:它是“合法”吗?
我不知道它是否可以做一些类似如下:
class SomeClass
{
int bar;
};
SomeClass* foo = new SomeClass();
int offset = &(foo->bar) - foo;
SomeClass* another = new SomeClass();
*(another+offset) = 3; // try to set bar to 3
只是好奇, 丹奥
请修复代码,以便在您访问它的位置访问“bar”。我们目前不知道你是否想要将它变成一个结构体或公共或某物。我认为回答你的问题很重要。 – 2009-09-07 18:28:58
我的懒惰指针语法可能是一个更大的问题,私人/公众位......耸耸肩......将在下班后尝试编辑。 – 2009-09-07 21:39:56
不,私人/公共事物也非常重要。它有助于确定班级是否为POD,这会以重要的方式影响答案。 – jalf 2009-09-08 00:43:42