C++primer
文章平均质量分 90
pursue_my_life
个人学习历程,感悟
展开
-
c++primer学习笔记--引用与指针的深刻理解与总结 及数组结合
用参数传递来 辨析 指针与引用的区别在谭浩强错误的c程序设计中的最大错误就是: 传参有两种方式,传址和传值!!!!, 这句话我想说: 完全错,大错特错,错上加错,误人子弟。指针也是一个变量,指针也值的 子集。所以谭浩强的说法完全错误, 为什么说只有一种呢, 指针在传参时,在函数的作用域内也只要产生一个副本 ——> 然后用这个副本指针指向 实际参数 ——> 然后就可以用...原创 2018-05-21 19:50:52 · 323 阅读 · 2 评论 -
c++primer学习笔记--initalizer_list类
小明喜欢放屁,扣脚, 打嗝.......等等, 这些行为简直丧心病狂。。。。 室友为了让小明知耻, 决定创造一个函数 ——> 功能是: 把传进来的这些行为用 嘴炮夸张10倍,然后再返回到同学们之中。但是我们不知道 小明会做几个行为,所以不确定要 传给函数 几个参数。initalizer_list 诞生了! ! ! 常见接口: 以后在补上int func( ...原创 2018-05-21 20:34:05 · 454 阅读 · 0 评论 -
C++内联函数(转载)
阅读目录什么是内联函数如何使函数内联为什么要使用内联函数inline函数的优缺点分析什么时候该使用内联函数 正文 在C语言中,我们使用宏定义函数这种借助编译器的优化技术来减少程序的执行时间,那么在C++中有没有相同的技术或者更好的实现方法呢?答案是有的,那就是内联函数。内联函数作为编译器优化手段的一种技术,在降低运行时间上非常有用。我们将从:什么是内联函数为什么要使用内联函数内联函数优缺点...转载 2018-05-22 13:19:36 · 93 阅读 · 0 评论 -
c++primer学习笔记--为什么要自己写拷贝构造函数
以这个类为例子,#include <iostream>using namespace std;class obj{ private: int* p; public: obj() { p = new in...原创 2018-05-26 16:49:24 · 906 阅读 · 0 评论 -
c++primer学习笔记--this指针以及const成员函数
this指针——指向类对象的指针#include <iostream>using namespace std;class bitch{ private: static int service;//静态成员函数 int baby;//非静态成员函数 public: ...原创 2018-05-26 18:02:38 · 417 阅读 · 0 评论 -
友元函数
转载至: http://blog.chinaunix.net/uid-790245-id-2037327.html问题的提出 我们已知道类具备封装和信息隐 藏的特性。只有类的成员函数才能访问类的私有成员,程式中的其他函数是无法访问私有成员的。非成员函数能够访问类中的公有成员,但是假如将数据成员都定义 为公有的,这又破坏了隐藏的特性。另外,应该看到在某些情况下,特别是在对某些成员函数多次调用时,由...转载 2018-05-26 23:33:31 · 2958 阅读 · 0 评论 -
c++primer学习笔记--extern 链接指示
extern的使用我们自己编写了一个头文件, 是属于c的, 因为c++编写的程序比较慢。#ifndef my_c_language//头文件保护符#define my_c_language#include <stdio.h>using namespace std;void fuck(){ printf("This is only have 'c' lang...原创 2018-05-27 14:52:46 · 442 阅读 · 0 评论 -
c++primer学习笔记--委托构造函数的作用
class cook{ public: cook( char* rice, char* vegetable ); //洗菜,淘米 cook( char* rice); //洗菜}; 洗菜是两个构造函数共有的, 定义两边会很麻烦, 那么怎么办呢class cook{ public: ...原创 2018-05-27 15:53:33 · 1029 阅读 · 0 评论 -
c++类与对象练习题-返回什么好呢?
此题主要考察this指针,以及引用作左值#include <iostream>using namespace std;class A{ public: int val; // 在此处补充你的代码 A(int x = 123 ) { val = x; }//************这部分我想了...原创 2018-06-23 14:17:53 · 925 阅读 · 0 评论 -
STL学习笔记之 map的使用
pair类型template<typename T1, typename T1>存有两个数,分别为 first(类比如数组下标) 和 second(类比数组下标所指的元素)。 first 元素我们称为 关键字map类型map(映射)是一种数据结构。map的每个节点存一个 pair 类型的对象。map中每个节点按照 first 从小到大排序。 (自行类比数组下标 从小到大排列)注: f...原创 2018-05-18 23:53:19 · 217 阅读 · 0 评论 -
const 与 constexpr 、及 costexpr 与 inline 函数的区别
(转自知乎某大牛的回答,具体忘了) (一)对于修饰Object来说,const并未区分出编译期常量和运行期常量constexpr限定在了编译期常量(二)目的: 提高效率。因为编译器知道这是一个常量,所以可以优化代码,比如整个 function 全部优化掉。#include <iostream>#include <array>using namespace std;...转载 2018-05-01 15:24:40 · 1219 阅读 · 0 评论 -
头文件保护符的用处
头文件保护符: 1.#ifdef 已定义时为真。(这句一般加在。.h文件的一开始) 2.#ifndef 未定义时为真,若为真,执行后续操作,直到遇到 #endif 为止。(这句加在.h文件的尾部) eg: #ifdef tree //如果没有定义 Tree 这个变量,就...原创 2018-04-08 13:16:20 · 3248 阅读 · 1 评论 -
C++模板的正确写法
我们写模板传统的写法是这个样子的: 1. 把类的整个框架写在 .h 文件中。//注意此文件中要写上 头文件保护符 2. 把类中所有接口的实现写在 .cpp 中。 3. 在 main() 中创建 女朋友 ,调用女朋友的各种接口。...原创 2018-04-08 16:42:26 · 1832 阅读 · 0 评论 -
c++primer学习之 vector
一)vector的常用接口 v.push_back( t ); 尾部插入一个元素 v.size(); 元素个数 v.empty() 空 v[n] 返回相应元素的 引用// 不推荐 ...原创 2018-05-10 00:18:40 · 120 阅读 · 0 评论 -
c++ primer 学习笔记之 左值右值
c c中的左值 ——> 可以在赋值语句左侧 c中的右值 ——> 可以在赋值语句右侧c++c++中的左值 ——> 表达式的求值结果为一个 对象(对象在内存中占取空间)c++中的右值 ——> 表达式的求值结果,仅仅为一个值(值只会回显在屏幕上) c中的左右值概念与 c++ 的左右值概念完全不相同!!! ...原创 2018-05-10 14:10:46 · 236 阅读 · 0 评论 -
c++ primer 学习笔记之 c++类型转换
类型转换分为两种:1. 显示类型转换2. 隐式类型转换(非常危险) 隐式类型转换常见于各种函数的传参, 以及 不同类型变量间的运算等等。在这里, 我们来着重的 了解显示类型转换。 在 c 风格的类型转换中, 表现形式没有那么清晰名了,容易被看漏,多以一旦转换过程出现问题,追踪起来也更加困难。 eg: (int) ant;在...原创 2018-05-10 16:41:27 · 213 阅读 · 0 评论 -
c++ primer学习笔记 之 异常处理
(此文中代码示例来着 中国大学生mooc中北大的 老师)#include <iostream>using namespace std;int main(){ double m, n; cin >> m >> n; try { cout <<...转载 2018-05-12 12:50:31 · 127 阅读 · 0 评论 -
c++文件操作
本篇非常肤浅,作个人之用。 各个类间通过继承连接。 用法直接看代码. 步骤有三:1. 表示从文件读取数据 , 方式是in2. 通过某种 数据结构 来存储,再用 算法 处理3. 表示 从数据结构中输出数据到某个文件, 方式是out #include <fstream>#incl...原创 2018-07-21 17:26:48 · 166 阅读 · 0 评论