https://www.cnblogs.com/xuwendong/p/10078571.html https://refactoringguru.cn/design-patterns/builder/cpp/example