如何:通过指针访问成员(C# 编程指南)
要访问在不安全的上下文中声明的结构的成员,您可以使用以下示例中所示的成员访问运算符,其中,p 是指向包含成员 x 的结构的指针。
CoOrds* p = &home;
p -> x = 25; //member access operator ->
示例
此示例声明并实例化了包含两个坐标(x 和 y)的结构 CoOrds。 此示例通过使用成员访问运算符 -> 和一个指向实例 home 的指针为 x 和 y 赋值。
备注
请注意,表达式 p->x 等效于表达式 (*p).x,使用这两个表达式可获得相同的结果。
// compile with: /unsafe
struct CoOrds
{
public int x;
public int y;
}
class AccessMembers
{
static void Main()
{
CoOrds home;
unsafe
{
CoOrds* p = &home;
p->x = 25;
p->y = 12;
System.Console.WriteLine("The coordinates are: x={0}, y={1}", p->x, p->y );
}
}
}