【C++入门基础篇】教程文章相关的互联网学习教程文章

C++基础第六课【图】

一、C++中一些特殊的运算符的重载 1.第三个原因是对将亡值进行修改没有意义的,所以不成立 2.智能指针 注意智能指针中 ()的重载我们要注意 operator() 这是一个函数名 是一体的, 运行的时候就是相当于 a.operator()(参数) 3.仿函数就是将系统的一些函数重写 就像这样设计一个 Add_Int 的类,然后重载()函数,在主函数中 定义一个add对象,那么 你写一个 int x=add(10,20),如果你不看类的...

C++基础(十三)函数指针【代码】【图】

函数指针,指向函数的指针,顾名思义,其本质还是一个指针!可以对其进行赋值(包括nullptr),当然也能判断是否为空。 函数的类型,由它的返回类型和形参类型、形参个数共同决定,与函数名无关。所以函数指针,也只关心这些。 1、定义 定义一个函数指针,只需要指定返回值类型和形参(包括个数和类型)。在返回值和形参类型中间,加上函数指针的变量名,以及"*",并用一对小括号包起来即可。如下: 返回类型 (*函数指针名)(形参) 例如...

c++基础知识【代码】

1.存储单位转换 1 B(字节) = 8 bit(比特位); 1 KB(千字节) = 2^10 B; 1 MB(兆字节,百万字节) = 2^10 K = 2^20 B; 1 GB(千字节,吉字节,十亿字节) = 2^10 M = 2^20 K = 2^30 B; 1 TB(千字节,万亿字节,太字节) = 2^10 G = 2^20 M = 2^30 K = 2^40 B;

C++基础二-条件判断【代码】

#include <iostream> using namespace std; const int score = 60;int main() {//if--else if --elseint a;cout << "Type num" << endl;cin >> a;if (a>score) {cout << "及格了!" << endl;}else if (a == score) { cout << "Luckly!" << endl; }else { cout << "Failed !" << endl; }//三目运算符int a1 = 10;int a2 = 20;int a3;a3 = a1 > a2 ? a1 : a2;cout << a3 << endl;//switch 执行多条件分支cout << "This is switch par...

对于c++基础类型的总结

对于c++学习的基本感悟 数据结构元素 用来去将抽象的元素,具体化,一般分为 一、char 1个字节, ①、表示字符串内容,根据是否是asc码又往外延伸GB码,是交流必备 ②、可以做存储用,延伸出string,是c++存储的一种形式,因为char其大小为一个字节,也是帧格式一般存在的形式,FFH,所以偏移时候,也是移动一个字节,所以使用char时可以知道内存中一字节所存储内容。 二、short 2字节 ①、 无符号65535大小,可以应付一般的计数 ②...

C++基础知识框架(二)【代码】

文章目录 第3章 类和对象(一)3.1 类的构成3.1.1 从结构体到类3.1.2 类的构成 3.2 成员函数的定义3.2.1 普通成员函数的定义3.2.2 内联成员函数的定义 3.3 对象的定义和使用3.3.1 类和对象的关系3.3.2 对象的定义3.3.3 对象中成员的访问3.3.4 类的作用域和类成员的访问属性3.3.5 对象赋值语句 3.4 构造函数和析构函数3.4.1 构造函数3.4.2 成员初始化列表3.4.3 带默认参数的构造函数3.4.4 析构函数3.4.5 默认的构造函数和默认的析构...

c++ 基础知识(六) 结构体字节对齐【代码】

我们在使用结构体的时候,有没有发现这样的情况,用sizeof(结构体)算出来的内存字节数与结构体里面的数据所占内存字节数总和不匹配。 比如以下: struct A {char a='0';//占用1个字节int b=0;//占用4个字节short c=0;//占用2个字节 }; 本来总共应该是7个字节 但是用sizeof(结构体)算出来却是12个字节 今天我们来看看到底是怎么回事呢?原来啊,是编译器帮我们做了字节对齐。做字节对齐的目的是提高内存的访问效率。 比如32位CPU,...

C++基础入门---8.结构体【P64~P71】【代码】【图】

C++基础入门---8.结构体【P64~P71】 8. 结构体8.1 结构体的定义和使用8.2 结构体数组8.3 结构体指针8.4 结构体嵌套结构体8.5 结构体作函数参数8.6 结构体中const使用场景8.7 结构体案例18.8 结构体案例28. 结构体 结构体属于用户自定义的数据类型,允许用户存储不同的数据类型 8.1 结构体的定义和使用注: 1、定义结构体时的关键字是struct,不可以省略; 2、创建结构体变量时,关键字 struct 可以省略; 3、结构体变量利用操作符 ...

C++基础(二)【代码】

0x05 运算符 算数运算符运算符 描述 实例+ 把两个操作数相加 A + B 将得到 30- 从第一个操作数中减去第二个操作数 A - B 将得到 -10* 把两个操作数相乘 A * B 将得到 200/ 分子除以分母 B / A 将得到 2% 取模运算符,整除后的余数 B % A 将得到 0++ 自增运算符,整数值增加 1 A++ 将得到 11-- 自减运算符,整数值减少 1 A-- 将得到 9关系运算符运算符 描述 实例== 检查两个操作数的值是否相等,如果相等则条件为真。 (A == B) 不为...

C++基础(三)【代码】

0x09 数字 通常,当我们需要用到数字时,我们会使用原始的数据类型,如 int、short、long、float 和 double 等等。这些用于数字的数据类型,其可能的值和数值范围常用姿势 #include <iostream> using namespace std;int main () {// 数字定义short s;int i;long l;float f;double d;// 数字赋值s = 10; i = 1000; l = 1000000; f = 230.47; d = 30949.374;// 数字输出cout << "short s :" << s << endl;cout << "...

C++基础(四)【代码】

0x13 引用 引用变量时一个别名,是某个已存在的变量的另个名字,一旦把引用初始化为某个变量,就可以使用该引用名称或变量名称来指向变量引用与指针的区别 不存在空引用,引用必须连接到一块合法的内存一旦引用被初始化为一个对象,就不能被指向到另一个对象,指针可以在任何时候指向到另一个对象引用必须在创建时被初始化,指针能够在任何时间被初始化创建引用 变量名称是变量附属在内存位置中的标签,可以把引用当成是变量附属在...

C++基础(五)【代码】

0x01类 基本操作 #include <iostream> using namespace std;class BOX { public:double changdu;double kuandu;double gaodu; };int main() {BOX b1;BOX b2;double tiji = 0.0;b1.changdu = 1;b1.gaodu = 1;b1.kuandu = 1;tiji = b1.changdu * b1.gaodu * b1.kuandu;cout << "tiji" << tiji << endl;return 0;}把计算体积的函数也放进类中并调用 #include <iostream> using namespace std;class BOX { public:double changdu;dou...

C++基础之虚析构函数原理【代码】

结论 虚函数表指针 + 虚函数表 共同实现 演示 VS2017(32位) 基类有析虚构函数 一段代码演示 #include <iostream> #include <memory>class shape { public:virtual ~shape(){std::cout << "~shape\n\n";} };class circle : public shape { public:~circle(){std::cout << "~circle\n\n";} };int main(int argc, char *argv[], char *env[]) {std::unique_ptr<shape> pshape(new(std::nothrow) circle);return 0; }circle 继承 基类...

C++基础(十一)智能指针之unique_ptr【代码】【图】

前一篇文章介绍了共享指针shared_ptr,这篇介绍另一种智能指针:unique_ptr。 1、创建 与shared_ptr不同,C++11并没有提供类似std::make_shared的标准库函数来返回一个unique_ptr,但是C++14提供了类似的库函数:std::make_unique,语法如下: std::make_unique<类型>(参数列表) 依然以Person类为例: class Person { public:Person(const std::string& strName, int iAge) :m_strName(strName), m_iAge(iAge){}~Person(){ std::co...

C++基础知识篇:C++ 数组【代码】【图】

C++ 支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合。数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量。 数组的声明并不是声明一个个单独的变量,比如 number0、number1、...、number99,而是声明一个数组变量,比如 numbers,然后使用 numbers[0]、numbers[1]、...、numbers[99] 来代表一个个单独的变量。数组中的特定元素可以通过索引访问。 所有的数组都是由连续的内存位置组成。最低的地...