cpp的理解
cpp这门语言与其他语言设计上的不同之处,在于cpp为了高效运行,没有采用在堆上分配对象通过GC管理对象。而是选择了一种更加高效但是更加困难的方式,通过尽量在栈上分配内存。因为栈上分配和释放内存只需要几条cpu指令就能完成,而在栈上则需要调用分配函数这需要更多的时间。而且栈的内存布局更加紧凑,对缓存更加的友好。但是也因为栈的先进先出的特性,这让对象的生命周期更加的难以管理,因为栈帧返回后直接就释放了。而且函数参数的传参也变得复杂,有很多的方式减少传参带来的开销,许多cpp特性就是为了解决这个问题产生的。 ...