- 博客(5)
- 收藏
- 关注
原创 effective C++ 55 3资源管理
13.以对象管理资源 把资源放进对象内,依赖C++的“析构函数”自动调用机制确保资源被释放 auto_ptr被销毁时会自动删除它所指之物,不要让多个auto_ptr指向同一个对象。 shared_ptr 计数型智慧指针。 为防止资源泄露,请使用RALL对象。他们在构造函数中获得资源并在析构函数中释放资源。 两个常被使用的RALL classes分别是shared_ptr和auto_ptr...
2018-07-27 16:15:26
115
原创 effective C++ 55 (二)构造/析构/赋值运算
5.了解C++默默编写并调用哪些函数 编译器可以暗自为class创建default构造函数、copy构造函数、copy assignment 操作符,以及析构函数。 编译器所生成的 copy assignment 操作符,其行为基本上与copy 构造函数如出一辙,但一般而言只有当生出的代码合法且有适当机会证明它有意义,其表现如我先前所说。万一两个条件有一个不符合,编译器会拒绝为class 生出...
2018-07-26 16:07:03
101
原创 effective C++ 55(一)
视C++为一个语言联邦。 尽量用const、enum、inline替换#define。 对于单纯常量,最好以const对象或enums替换#defines。 对于形似函数的宏,最好用inline替换函数#defines。 3.尽肯能的使用const。 const出现在星号左边,表示被指物常量:char char *p=greeting; const data const出现在星号右边,...
2018-07-24 20:22:43
140
原创 UNIX环境高级编程学习笔记 第三章 文件I/O(二)
函数dup() dup2() #include <unistd.h> int dup(int fd);返回当前可用的文件描述符最小值。 int dup2(int fd, int fd2); 成功放回新的文件描述符,出错返回-1; dup2()可用fd2指定新描述符的值。 sync()、fsync()、fdatasync()函数 #include <unistd.h>...
2018-07-24 15:37:23
192
原创 UNIX环境高级编程学习笔记 第三章 文件I/O
creat 函数 #include <fcntl.h> int creat(const char *path,mode_t mode); 成功返回只写打开的文件描述符,错误放回 -1; 等效 open(path, O_WRONLY|O_CREAT|O_TRUNC,mode); O_TRUNC 如果文件存在,只写或读-写成功打开,则其长度截断为0; creator()只写方式打...
2018-07-24 10:30:11
170
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人