- 博客(3)
- 收藏
- 关注
翻译 静态链接全过程
静态链接过程程序静态链接的过程如下,举例说明(翻译Library order in static linking的The linking process一节)$ gcc main.o -L/some/lib/dir -lfoo -lbar -lbaz注:库指library,对象指object,此处要注意区分。1 当链接时,链接器维护两个列表:1.1 到目前为止遇到的所有目标文件(obj...
2019-01-01 17:58:39 1233
原创 C++异常
异常一些基本知识std::exception为异常的基类。所有其他标准库抛出的异常都是该类的派生类,因此所有标准异常都能被std::exception&捕获。通常使用what()函数得到错误信息,函数原型为:virtual const char* what() const throw();C++函数后面加关键字throw(something)限制,是对这个函数的异常安全作出限制;...
2018-11-29 19:02:38 157
原创 C++模板类声明和定义几种写法
为什么模板类的实现放在cpp会出错在编译用到了模板类的编译单元时,编译器需要访问方法或者类的实现,以实例化它们。 如果这些实现不在头文件中,则它们将不可访问,因此编译器将无法实例化模板,进而会导致编译出错。模板类的定义必须放在.h文件中吗答案是否定的,模板类的几种写法声明和定义都放在.h中// Foo.htemplate <typename T>struct Foo{...
2018-11-29 01:01:17 26160
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人