C++基础知识1
来源:互联网 发布:西安建筑软件班 编辑:程序博客网 时间:2024/06/18 12:36
1. 命名空间起别名:
namespace Television{…}
namespace TV Television;
2. 命名空间可以嵌套
namespace EMSD1701
{
string name;
namespace taiyuan{ string name;}
}
EMSD1701::taiyuan::name = “test”;
using namespace::taiyuan::name;
建议不用嵌套。
3.const与指针
常量指针 常量的指针 const int * p;
指针常量 指针是常量 int * const p
常量指针指向常量
const int * const p;
常对象只能调用常成员函数
常成员函数只能 读 成员变量
const_cast
用常量指针指向常对象
调用普通成员函数,修改普通成员变量
4.内联函数
在编译的时候拆开
做语法检查(与宏定义的不同)
inline关键字 , 无递归、循环…结构控制语句
写在头文件里也可以。声明和定义需放在一块。
g++ -E src/inline.cpp -o inline.e
g++ -S src/inline.cpp -o inline.s 执行完编译阶段就停。
g++ -O -S src/inline.cpp -o inline.s 优化
5.函数重载
顺序、个数、类型不同
但返回值不能作为重载条件
函数名不能作为函数的指针
函数名和形参列表作为 指针 _Z3aveidi _Z3aveii
//函数重载 overload
double ave(int a, int b){
return (a+b)/2;
}
double ave(double a, int b){
return (a+b)/2;
}
double ave(int a, double b, int c){
return (a+b+c)/2;
}
int main(){
int a,b;
double c = 1.5;
a=1;
b=2;
cout<
6.默认参数
声明和定义分开的时候,声明需要写,定义不需要写
从左到右,只要有一个参数有默认参数,它和它右边的都得有默认参数
要避免二义性
7.模板函数
模板函数和普通函数 的函数重载
8.布尔
0 : false
非0 : true 。二进制位只要有 1 的就是true《除去符号位》。
9.字符串
char*
10.操作符重载
11.new和delete
必须成对出现,否则会内存泄漏
12.引用
引用是一个变量的别名
& 出现在= 左面, 有可能是引用
声明的时候就需要初始化。
定义的时候就需要初始化。
引用不能重新赋值。
变量可以被多次引用。
//////////索引块不同,数据块相同
- C语言基础知识1
- C语言基础知识1
- C语言 基础知识1
- C/C++基础知识1
- [C++]基础知识备忘(1)
- C语言基础知识(1)
- C/C++基础知识总结1
- c语言基础知识回顾1
- C 基础知识
- C 基础知识
- C基础知识
- C 基础知识
- c基础知识
- c基础知识
- c基础知识
- [C]基础知识
- c基础知识
- C基础知识
- 数据结构与算法学习之(一):基本概念介绍
- Java静态绑定与动态绑定
- 指示函数 indicator function
- Jupyter Notebook的27个秘诀,技巧和快捷键
- python基础-socketserver(tcp\udp)、selectors模块
- C++基础知识1
- 如何快速准确的导入销货清单-支持航天金税盘百旺税控盘清单导入
- CodeForces
- 单元测试加入到自动化测试报告里面
- ⚔疯狂输出⚔面向对象核心思想。
- java 集合框架
- 高级sql
- 《计算机网络》谢希仁版学习笔记3-数据链路层(下)
- LeetCode 171. Excel Sheet Column Number