【发布时间】:2010-11-26 07:10:53
【问题描述】:
喂喂喂
我想知道是否可以执行以下操作:
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可以在您访问它的地方访问。我们目前不知道您是否想让它成为结构或公共或其他东西。我认为回答你的问题很重要。 -
我的惰性指针语法可能是一个更大的问题,私有/公共位......耸耸肩......下班后会尝试编辑。
-
不,私人/公共的事情也很重要。它有助于确定课程是否为 POD,这会在重要方面影响答案。
标签: c++ pointers class pointer-arithmetic