BFile类的实现以及部分宏的修改