是否可以使用初始化列表初始化boost::unordered_map
? -Weffc++
需要它。
我无法使用方法来初始化它,因为我只在构造函数内部进行一些处理后才填充地图。我可以在方法中创建一个空地图并返回它,但这对我来说听起来不是一个好主意。
我也可以使用指针并将其初始化为NULL。我宁愿不要创造相当于空方法的东西。
答案 0 :(得分:4)
只需在初始化列表中构造成员变量:
struct S {
boost::unordered_map<int, int> m;
S() : m() { }
};
这足以使-Weffc++
闭嘴。