> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# PFLobbyDataUpdate

> 用于更新 PlayFab 多人游戏大厅共享部分的请求结构，包括属性、搜索数据、所有者或成员身份设置。

对大厅共享部分进行更新的请求。

## 语法

```cpp theme={null}
struct PFLobbyDataUpdate {  
    const PFEntityKey* newOwner;  
    const uint32_t* maxMemberCount;  
    const PFLobbyAccessPolicy* accessPolicy;  
    const PFLobbyMembershipLock* membershipLock;  
    uint32_t searchPropertyCount;  
    const char* const* searchPropertyKeys;  
    const char* const* searchPropertyValues;  
    uint32_t lobbyPropertyCount;  
    const char* const* lobbyPropertyKeys;  
    const char* const* lobbyPropertyValues;  
    const bool* restrictInvitesToLobbyOwner;  
}  
```

### 成员

**`newOwner`**   const [PFEntityKey](/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pfmultiplayer/pfentitykey_clientsdk)\*\
*may be nullptr*

大厅的可选新所有者。

只有在满足以下条件之一时，才能更新此值：

* 更新此字段的成员是大厅的当前所有者
* 所有者迁移策略为 `PFLobbyOwnerMigrationPolicy::Manual` 且当前没有所有者
* 所有者迁移策略为 `PFLobbyOwnerMigrationPolicy::None` <br /><br /> 如果此大厅归客户端所有（当前所有者为 title\_player\_account 实体），则新所有者也必须为 title\_player\_account 实体。如果此大厅归服务器所有（当前所有者为 game\_server 实体），则新所有者也必须为 game\_server 实体。

**`maxMemberCount`**   const uint32\_t\*\
*may be nullptr*

此大厅成员数量的可选更新容量。

新值必须大于当前大厅中的成员数量，并且小于 `PFLobbyMaxMemberCountUpperLimit`。<br /><br /> 只有当前大厅所有者才能更新此值。

**`accessPolicy`**   const [PFLobbyAccessPolicy](/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pflobby/enums/pflobbyaccesspolicy)\*\
*may be nullptr*

此大厅的可选更新访问策略。

只有当前大厅所有者才能更新此值。

**`membershipLock`**   const [PFLobbyMembershipLock](/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pflobby/enums/pflobbymembershiplock)\*\
*may be nullptr*

对此大厅成员身份锁定的可选更新。

只有当前大厅所有者才能更新此值。

**`searchPropertyCount`**   uint32\_t

要更新的搜索属性数量。

只有当前大厅所有者才能更新搜索属性。<br /><br /> 在任何给定时间，最多只能有 `PFLobbyMaxSearchPropertyCount` 个并发的搜索属性。因此，在此更新中最多可以指定该数量两倍的唯一属性（如果其中一半属性正在被删除）。<br /><br /> 如果违反属性限制，整个更新操作将失败。

**`searchPropertyKeys`**   const char\* const\*\
*大小为 `searchPropertyCount` 的数组*

要更新的搜索属性的键。

只有当前大厅所有者才能更新大厅属性。<br /><br /> 搜索属性作为元数据对大厅的非成员可见，可用于筛选和排序大厅搜索结果。<br /><br /> 仅会更新此键列表中指定的属性。如果键尚不存在，则创建该属性。如果新属性值为 nullptr，则删除该属性。此列表中未包含的任何现有属性将保持不变。<br /><br /> 搜索属性必须采用 string\_keyN 或 number\_keyN 形式，其中 "N" 是 1 到 `PFLobbyMaxSearchPropertyCount` 之间的数字，例如 string\_key1、number\_key14 等。<br />
**`searchPropertyValues`**   const char\* const\*\
*大小为 `searchPropertyCount` 的数组*

要更新的搜索属性的值。

只有当前大厅所有者才能更新搜索属性。<br /><br /> 搜索属性作为元数据对大厅的非成员可见，可用于筛选和排序大厅搜索结果。<br /><br /> 若要删除某值，请将其新值设为 nullptr。

**`lobbyPropertyCount`**   uint32\_t

要更新的大厅属性数量。

只有当前大厅所有者才能更新大厅属性。<br /><br /> 在任何给定时间，最多只能有 `PFLobbyMaxLobbyPropertyCount` 个并发的大厅属性。因此，在此更新中最多可以指定该数量两倍的唯一属性（如果其中一半属性正在被删除）。<br /><br /> 如果违反属性限制，整个更新操作将失败。

**`lobbyPropertyKeys`**   const char\* const\*\
*大小为 `lobbyPropertyCount` 的数组*

要更新的大厅属性的键。

只有当前大厅所有者才能更新大厅属性。<br /><br /> 大厅属性仅对大厅成员可见。<br /><br /> 仅会更新此键列表中指定的属性。如果键尚不存在，则创建该属性。如果新属性值为 nullptr，则删除该属性。此列表中未包含的任何现有属性将保持不变。

**`lobbyPropertyValues`**   const char\* const\*\
*大小为 `lobbyPropertyCount` 的数组*

要更新的大厅属性的值。

只有当前大厅所有者才能更新大厅属性。<br /><br /> 大厅属性仅对大厅成员可见。<br /><br /> 若要删除某值，请将其新值设为 nullptr。

**`restrictInvitesToLobbyOwner`**   const bool\*\
*may be nullptr*

对策略的可选更新，用于确定是否只有大厅所有者才能发送加入大厅的邀请。

当为 true 时，只有大厅所有者才能发送邀请。当为 false 时，任何成员都可以发送邀请。仅对客户端拥有的大厅可以为 true。

## 备注

大厅共享部分中的大多数数据只能由所有者更新。请查看每个字段的文档以确认。

## 要求

**头文件：** PFLobby.h

## 另请参阅

[PFLobby 成员](/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pflobby/pflobby_members)


## Related topics

- [PFLobbyServerPostUpdate](/zh-CN/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pflobby/functions/pflobbyserverpostupdate.md)
- [PFLobbyPostUpdate](/zh-CN/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pflobby/functions/pflobbypostupdate.md)
- [PFMultiplayer C/C++ API 概览 - PFLobby.h](/zh-CN/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pflobby/pflobby_members.md)
- [PlayFab Multiplayer C++ SDK 发行说明](/zh-CN/services/playfab/multiplayer/lobby/lobby-matchmaking-sdks/lobby-and-matchmaking-release-notes.md)
- [LobbyDataUpdate](/zh-CN/services/playfab/multiplayer/lobby/unity-multiplayer-api-reference/PlayFab.Multiplayer/LobbyDataUpdate/LobbyDataUpdate.md)
