新建class时:
考虑对象的拷贝语义(copyable?)
新建member function时:
如果不改变对象状态,在声明后面加const(和ruby的!开头的方法一样)
新建function parameter时:
如果是传值的,而且是复杂对象,尽量使用const ValueType &
尽量把值放在shared_ptr中,然后把只传递指针(和C#与JAVA一样)
新建virtual member function时:
是不是要把destructor也声明成virtual的?
是不是要声明成pure virtual的
实例化对象时:
如果能实例化在栈上最好
不能,把指针放入shared_ptr中
考虑对象的拷贝语义(copyable?)
新建member function时:
如果不改变对象状态,在声明后面加const(和ruby的!开头的方法一样)
新建function parameter时:
如果是传值的,而且是复杂对象,尽量使用const ValueType &
尽量把值放在shared_ptr中,然后把只传递指针(和C#与JAVA一样)
新建virtual member function时:
是不是要把destructor也声明成virtual的?
是不是要声明成pure virtual的
实例化对象时:
如果能实例化在栈上最好
不能,把指针放入shared_ptr中
本文探讨了C++编程中的最佳实践,包括如何在新建class时考虑对象的拷贝语义,如何正确使用const限定符来提高代码效率,以及何时使用shared_ptr来管理对象生命周期等问题。

被折叠的 条评论
为什么被折叠?



