随笔分类 -  C++

C++11特性简单介绍
摘要:### 自动类型推导auto ```cpp auto x = 10; // 推导x为int类型 auto str = "Hello"; // 推导str为const char*类型 ``` ### 基于范围的For循环 ```cpp for(int& i: someDataStructure) {
23
0
0
C++面向对象-构造函数与析构函数
摘要:以OOP实现一个顺序栈为例, 介绍构造函数与析构函数 #include <iostream> #include <iterator> using namespace std; /* 构造函数和析构函数 函数的名字和类名一样,没有返回值 */ class SeqStack { public: //构造
34
0
0
C++面向对象-类和对象、this指针
摘要:OOP思想: 首先我们分析问题场景种寻找一个实体; 根据实体的属性与行为 可以得到ADT抽象的数据类型; ADT 输出为一个类 (属性对应成员变量,行为对应成员方法); 实例化类 生成了一个对象 ,此对象在逻辑意义中才对应一个实体; OOP语言的四大特征: 抽象 封装/隐藏 继承 多态 #inclu
17
0
0
C++基础-理解new和delete
摘要:int main(int argc, char const *argv[]) { //C风格 int *p = (int*)malloc(sizeof(int)); if(p==NULL){ return -1; } *p = 20; //初始化 free(p); int *q = (int*)ma
23
0
0
C++基础-左值引用与右值引用
摘要:引用 int main(int argc, char const *argv[]) { int a = 10; int *p = &a; int &b = a; //int &c = 20; //错误,20无法取地址 *p = 20; cout<<a<<" "<<*p<<" "<<b<<endl;
20
0
0
C++基础-const与一二级指针的结合
摘要:const int a = 10; int *p = &a; //会报错,常量地址不能泄露给指针 // 左:int* 右:const int* const在C++中,修饰的常量不能作为左值,在编译过程中所有出现常量的地方都会用初始值替换。 const修饰的量常出现的错误是: 常量不能再作为左值(试图
90
0
0
C++基础-掌握const的用法
摘要:const怎么理解 const 修饰的变量不能够再作为左值,初始化完成后,值不能够被修改 int main(int argc, char const *argv[]) { int a = 10; a = 20; //左值 const int b = 20; //b无法左值 return 0; } C
76
0
0
C++基础-函数重载
摘要:函数重载 一组函数,函数名相同,参数列表个数或类型不同,那么这一组函数称作函数重载 C++为什么支持函数重载,C语言不支持函数重载 编译器编译代码产生符号的规则是不同的: C++代码产生函数符号的时候,是函数名+参数列表类型组成的 C代码产生函数符号时,只由函数名决定 如果把此cpp 代码放入c中
47
0
0
C++基础-inline内联函数
摘要:/* inline内联函数 和 普通函数区别 inline内联函数: 在编译过程中,就没有函数的调用开销了, 在函数的调用点直接把函数的代码进行展开处理了 inline只是建议编译器把这个函数处理成内联函数 但不是所有inline都会被编译器处理成内联函数 - 递归 如果代码量非常的大也不会展开处理
24
0
0
C++基础-形参带默认值的函数
摘要://定义处可以给形参默认值,声明也可以给形参默认值 //不管何处给,形参默认值只能出现一次 //int sum(int a = 10, int b = 20); //形参带默认值的参数,只能从右向左给 //实际压栈也是从右向左 int sum(int a=10, int b=20) { return
116
0
0
点击右上角即可分享
微信分享提示
深色
回顶
收起