C++知识点---explicit、TR1、Boost

简介: 关键字:explicit1、除非有明显的理由想要定义隐式转换,否则,单形参构造函数应该为explicit。将构造函数设置为explicit可以避免错误,并且当转换有用时。
关键字:explicit
1、除非有明显的理由想要定义隐式转换,否则,单形参构造函数应该为explicit。
将构造函数设置为explicit可以避免错误,并且当转换有用时。用户可以显式地构造对象。
2、explicit关键字只能用于类内部的构造函数声明上。在类的定义体外部所做的定义上不再
重复它。
参考:《C++ Primer》 12.4.4

TR1
TRI ("Technical Report I") 是一份规范,描述加入 C++ 标准程序库的诸多新机
能。这些机能以新的 class templates 和 function templates 形式体现,针对的题目
有 hash tables, reference-counting smart pointers , regular expressions,以及更多。
所有 TRl 组件都被置于命名空间 tr1内,后者嵌套于命名空间 std 内。
参考: 《Effective C++》第三版中文版  导读部分

Boost
Boost 是个组织,亦是一个网站 (http://boost. org) ,提供可移植、同僚复审、源
码开放的 C++ 程序库。大多数 TRl 机能是以 Boost 的工作为基础。在编译器厂
商于其 C++ 程序库中含入 TRl 之前,对那些搜寻 TRl 实现品的开发人员而言,
Boost 网站可能是第一个逗留点。 Boost 提供比 TRl 更多的东西,所以无论如何
值得了解它。
参考: 《Effective C++》第三版中文版  导读部分
目录
相关文章
|
开发框架 Linux C语言
C、C++、boost、Qt在嵌入式系统开发中的使用
C、C++、boost、Qt在嵌入式系统开发中的使用
367 1
|
存储 人工智能 算法
【一站式备考指南】一文掌握 C++ 程序设计 课程 知识点
【一站式备考指南】一文掌握 C++ 程序设计 课程 知识点
194 0
|
安全 编译器 程序员
【C++ 修饰符关键字 explicit 】掌握C++中的explicit :构造函数行为和初始化综合指南
【C++ 修饰符关键字 explicit 】掌握C++中的explicit :构造函数行为和初始化综合指南
863 3
|
8天前
|
存储 编译器 程序员
c++的类(附含explicit关键字,友元,内部类)
本文介绍了C++中类的核心概念与用法,涵盖封装、继承、多态三大特性。重点讲解了类的定义(`class`与`struct`)、访问限定符(`private`、`public`、`protected`)、类的作用域及成员函数的声明与定义分离。同时深入探讨了类的大小计算、`this`指针、默认成员函数(构造函数、析构函数、拷贝构造、赋值重载)以及运算符重载等内容。 文章还详细分析了`explicit`关键字的作用、静态成员(变量与函数)、友元(友元函数与友元类)的概念及其使用场景,并简要介绍了内部类的特性。
|
12月前
|
存储 网络协议 编译器
【干货总结】Linux C/C++面试知识点
Linux C/C++基础与进阶知识点,不仅用于面试,平时开发也用得上!
812 60
|
8月前
|
缓存 网络协议 API
C/C++ StringToAddress(字符串转 boost::asio::ip::address)
通过上述步骤和示例代码,你可以轻松地在C++项目中实现从字符串到 `boost::asio::ip::address`的转换,从而充分利用Boost.Asio库进行网络编程。
248 0
|
编译器 C语言 C++
从C语言到C++⑦(第二章_类和对象_下篇)初始化列表+explicit+static成员+友元+内部类+匿名对象(上)
从C语言到C++⑦(第二章_类和对象_下篇)初始化列表+explicit+static成员+友元+内部类+匿名对象
102 1
|
编译器 C++
【C++】类与对象(static、explicit、友元、隐式类型转换、内部类、匿名对象)
【C++】类与对象(static、explicit、友元、隐式类型转换、内部类、匿名对象)
74 2
【C++小小知识点】重载、覆盖(重写)、隐藏(重定义)的对比【详解】(23)
【C++小小知识点】重载、覆盖(重写)、隐藏(重定义)的对比【详解】(23)