【发布时间】:2025-11-27 23:10:01
【问题描述】:
所以我正在创建一个 IRC 服务器,并且我有一个从地图中删除用户的功能。这个想法是使用模式匹配,所以如果用户在地图中,则调用一个函数版本,否则调用另一个函数。
我的第一个想法是做以下事情:
remove_user_from_channel(User, Channel=#channel_details{users = UserMap=#{User := _}}) ->
Channel#channel_details{users = maps:remove(User, UserMap)}.
但是,编译失败,错误为variable 'User' is unbound。
有没有什么方法可以通过函数级模式匹配来实现这一点?
【问题讨论】:
标签: erlang