mas*_*oud 8 c++ qt data-structures
我想通过两种方式创建一个用于访问字符串的数据结构:
我的第一个想法是为每种方法使用两个映射,但它会导致数据重复:
QMap<int, QString> accessById;
QMap<QString, QString> accessByName;
Run Code Online (Sandbox Code Playgroud)
我正在寻找更好的方法,如下所示:
QMap<QPair<int, QString>, QString> multiAccess;
Run Code Online (Sandbox Code Playgroud)
但它无法帮助我(至少我不知道该怎么做),因为在地图中搜索需要知道ID和名称.如何定义Qt类的井结构以实现我的目标?
没有外部库,但Qt
怎么样:
QMap<QString, int> nameIdMap;
QMap<int, QString> accessById;
Run Code Online (Sandbox Code Playgroud)
您可以通过 id 访问并创建名称和 id 的映射。然后你可以通过名称访问
QString data = accessById[nameIdMap[the_name]];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8180 次 |
| 最近记录: |