首页 > 试题广场 >

定义结构体类型S和方法`func (s S) M()`。当有

[单选题]
定义结构体类型S和方法`func (s S) M()`。当有一个指针变量`p := &S{}`并调用`p.M()`时,会发生什么?
  • 编译错误,因为方法M定义在值类型S上,无法用于指针
  • 编译通过,运行时自动解引用指针,但接收器s是*p的副本
  • 编译通过,接收器s是原始结构的引用
  • 运行时panic,因为类型不兼容
指针类型拥有对应类型的方法+指针类型单独实现的方法,反过来不行
发表于 2025-11-03 16:40:44 回复(0)