![](https://img-blog.csdnimg.cn/20190918140012416.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
C/C++
C/C++
迪加不会飞
again again again
展开
-
20200617-01 sizeof 和数组使用上的注意实现 C/C++
一、示例说明//代码示例//情景一:int main() { int array[] = {1,2,3,4}; std::cout << sizeof (array) / sizeof (*array) << std::endl; return 0;}//情景二:int test_func(int array[]) { std::cout << sizeof (array) / sizeof (*array) << std::endl;原创 2020-06-17 10:41:29 · 982 阅读 · 0 评论 -
20200216 pair 和 tuple 对与 && 右值引用体验引申
推荐一个C++在线编辑器支持C++17 在线编译器网站问题代码:/*本人在 C++17 测试 分别尝试以下代码*//* 第一种 */std::pair<int, int&&> t; //提示错误没有提供值/* 第二种 */int&& k = 10;std::pair<int, int&&> t1...原创 2020-02-16 20:05:32 · 266 阅读 · 0 评论 -
20200214-02 reference_wapper 特性总结
#include <function> 也是一种浅层复制std::reference_wapper <int> t = t1; // std::cref() => const ref() // std::ref()作用一 可以保证引用对象在引用过程中一直存在作用二 可以作为容器存储无法保持引用的对象比如 vector&t 与 T& 是不...原创 2020-02-14 13:51:19 · 148 阅读 · 0 评论 -
20200214-01 C++ 右值引用 总结
对于右值引用的再次学习右值简单而言就是一种无法被取地址,而且只是在一个小范围内临时被使用的(C++11引入) int&& a = 10;针对右值,引申出临终值的概念临终值:1 可以跟左值一样被取地址 2 将要释放或者移走static_cast<T&&>() 和 std::move() 都是将传入的左值或右值转变成临终值由此观之...原创 2020-02-14 10:49:01 · 176 阅读 · 0 评论 -
202001300-01 C++17 多态再学习 override final 纯虚函数 虚函数带默认参数
一、前言:用一句解释何为多态 虚函数 纯虚函数 派生类和基类调用的关系和方法二、正文2.1 何为多态(我的理解)一个成员函数直到运行或者编译时才确定具体使用的实现类型多态里面有三种形式:重载、重写、覆盖重载:同一个类函数名相同但是参数不同class A { virtual void test(double a); void test(int a);...原创 2020-01-30 20:31:51 · 668 阅读 · 0 评论 -
20200129-02 C++7 继承再学习 及 函数名重复等相关问题解决办法 rror: non-static member found in multiple base-class
一、前言多个基类继承 多个基类继承出现成员名重复解决办法(包含不改动原程序) 虚继承(子类继承多个基类,多个基类又是同一个基类的派生类):解决基类重复继承产生的问题二、正文2.1 多个基类继承//注意该公式有部分问题,后续会解决class A {public: int getVal() { return 100; } int a...原创 2020-01-29 21:39:44 · 1115 阅读 · 0 评论 -
20200129-01 C++ 17 不能(无法)重载的运算符 及 可被重载运算符(按成员及非成员划分)
一、不能被重载的 C++ 运算符不能被重载的操作符" . " 成员运算符" .* " 成员指针运算符" :: " 域运算符" sizeof " 长度运算符" ?: " 条件运算符二、可以被重载的 C++ 运算符(图片来自 Beginning C++17 )英文含义:如果是 NO 说明只能使用成员函数类型,YES 说明成员函数和非成员函数都可以, ONL...原创 2020-01-29 19:38:16 · 244 阅读 · 0 评论 -
20200127-01 C++17 const 再学习 及 const 函数中修改成员变量
前言:1 const 的用途2 void t() const {} 修改成员变量 关键是使用 mutable 关键字 (查看 2.2 的示例)正文:一、const 的用途1. 在 C++ 定义固定的变量在 C 语言中定义一个 PI#define PI 3.14在 C++ 推荐使用 constinline const double PI {3.14};理由1 #...原创 2020-01-27 15:36:53 · 229 阅读 · 0 评论