So what is the value of src/bitcoin-wallet.cpp line 103~106? I don't understand.
If my memory serves me correctly, I think
MakeWalletInit is a dynamic function that depends on how BC is compiled, whether when it is compiled without a wallet enabled or with a wallet enabled, being a dynamic function, which does not strictly call specific functions but rather works as an interface to call whatever is required from the wallet.
That is, its use depends on the type of object created.
If I had to guess why this is done, I would say to ensure the scalability of Bitcoin development and compatibility with future implementations.