![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
文章平均质量分 59
weixin_42658928
这个作者很懒,什么都没留下…
展开
-
关于c++二义性
前言 今天在做老板的项目的时候遇到了编译warning,百度了一下说是函数重载二义性的问题。 也就顺便了解了一下二义性的问题,大多其实出在派生类的问题上。我的主要是传递参数不一致的问题。 看下面这个例子就挺明白的了,主要在于c++的多重继承带来的麻烦,所以需要管理好基类的对象权限。 这里还有一篇更详细一点的: 主要提出了解决的方法,一个就是加上区域限定符;还有就是运用虚基类和虚继承,有时间再好好扯...原创 2018-10-12 21:49:06 · 342 阅读 · 0 评论 -
字符串常量和变量
字符串常量: 定义:在一个双引号""内的字符序列或者转义字符序列称为字符串常量 例如:“HA HA!” “abc” “\n\t” 这些字符串常量是不能改变的,如果试图改变指针所指向的内容是错误的 因为字符串常量是存在静态内存区的,不可以改变的。 如定义字符串常量: char* a=“i love you.”; *a=‘h’; //试图改变它 这是错误的。 字符串变量: 在C语言中没有纯粹的c...原创 2018-10-17 22:42:57 · 363 阅读 · 0 评论 -
内存空间:堆和栈的区别
今天在堆和栈的问题上纠结了一阵子,在这里整理一下堆和栈的区别。 1.堆是存储动态内存分配的,而栈是存储在函数中定义的局部变量。 2.堆中对象生命周期较长,栈中生命对象较短。 3.堆中对象内存一般由程序员手动分配,要记得回收,否则容易发生内存泄漏,而栈中对象由操作系统自动分配释放。 4.堆是从低地址向高地址生长,而栈从高地址向低地址生长。 https://blog.csdn.net/u013238...原创 2018-10-15 09:28:38 · 165 阅读 · 0 评论 -
关于 static auto x = []()的用法解析
前言 在刷Leetcode的时候发现很多运算速度极快的代码都有这一段,所以研究一下. static const auto _ = []() { ios::sync_with_stdio(false); cin.tie(nullptr); return nullptr; }(); 从来没见过的语法,auto的用法c++中有接触过,不过第一次看到这种用法。 在另一篇文章中看到...原创 2018-10-08 22:11:00 · 2558 阅读 · 0 评论 -
32位,16位,8位系统的区别以及sizeof函数
前言 经常能碰到关于位数和存储关系上的问题,今天决定花点时间来好好的解析一下。 位数的含义 cpu的位是指一次性可处理的数据量是多少,1字节=8位,2的八次方,32位处理器可以一次性处理4个字节的数据量,依次类推,32位操作系统针对的32位CPU设计。同时32位cpu可以最多就可以访问2的32次方的空间,即4g的内存空间。这里有相关的文章。 https://blog.csdn.net/jack2...原创 2018-10-17 20:13:21 · 1350 阅读 · 0 评论 -
c++11中for的基于范围的循环和for_each
for (based on ranged) 这个for循环是c++11提出的新的写法,更加的简洁了,不过感觉在运用上可能还是以前的for更加自由一点。 vector<int> vec; vec.push_back(10); vec.push_back(20); for (auto i : vec) { cout << i; } 这是个简单的例子:输出vector...原创 2018-10-30 22:30:20 · 845 阅读 · 0 评论 -
关于static关键字(面向过程)
面向过程中的static 面向过程中的static主要指全局静态变量,局部静态变量和静态函数。 全局静态变量 比较熟悉的一个了,在全局变量前,加上关键字static,该变量就被定义成为一个静态全局变量。我们先举一个静态全局变量的例子,如下: #include &amp;lt;iostream&amp;gt; using namespace std; void fn(); //声明函数 static int n;...原创 2018-11-05 22:08:29 · 159 阅读 · 0 评论 -
面向对象 (类中的static关键字)
面向对象 (类中的static关键字) 静态数据成员 在类内数据成员的声明前加上关键字static,该数据成员就是类内的静态数据成员。 //Example5 #include <iostream> using namespace std; class Myclass { public: Myclass(int a, int b, int c); ...原创 2018-11-05 22:16:56 · 287 阅读 · 0 评论