in C++ there's many many ways to design your code.
Use templates, OO or functions. Use STL with pointers or copy by value, use namespaces or not.
If every programmer can do what they want you see huge differences in style.
What happens in my company now is that beginner, intermediate and 10+ years C++ programmers have to build a platform and you see exactly this. lots of style differences, me using boost::shared_ptr a lot, others prefer old style pointers.
Now we are trying to agree on one style as much as possible but as usual us stubborn programmers cant agree on anything
How is this problem usually fixed? Somebody knowledgable and not in the team decides, vote, discuss forever or everybody can do what they want?