自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 C和C++的&、|、^、~运算符是什么

“&”:与运算符,双目运算符“&”运算符,就是按位“与”, 只有两者对应位都为“1”,结果对应位才为 1,否则为 0 1 0 1 0 & 1 1 0 0 = 1 0 0 0“|”:或运算符,双目运算符“|”运算符,就是按位“或”,只要两者对应位有一个为“1”,则结果对应位就为 1,否则为 0 1 0 1 0 | 1 1 0 0 = 1 1 1 0“^”:异或运算符​​​​​​​,双目运算符“^”运算符,就是按位“

2021-01-29 14:38:15 7449

原创 指针数组和数组指针的区别

指针数组和数组指针有什么区别呢?数组指针:数组的指针,既一个指针,其指向一个数组的地址。指针数组:指针的数组,既一个数组,里面存放的元素每一个都是一个单独的指针。#include <iostream>using namespace std;int main(){ int temp[5] = { 1,2,3,4,5 }; int(*p)[5] = &temp; int* p1[5] = { &temp[0],&temp[1],&temp[2],&

2021-01-22 09:10:00 2645 1

原创 当strtok_s函数在字符串的开头分割会发生什么

#include <iostream>using namespace std;int main(){ char str[10] = "asdf_agfa"; char* start = str; char* end = str; start = strtok_s(str, "_", &end); cout << "start\t: " << start << endl; cout << "end\t: " <&lt

2021-01-14 15:39:02 210

转载 .hpp文件的作用以及与传统.h文件的区别

1、hpp,其实质是将.cpp的实现代码混入.h头文件当中,定义与实现都包含在同一文件,则该类的调用者只需要include该hpp文件即可,无需再将cpp加入到project中进行编译。而实现代码将直接编译到调用者的obj文件中,不再生成单独的obj,采用hpp将大幅度减project中的cpp文件数与编译次数,也不再发布烦人的lib与dll,因此非常适合用来编写公用的开源库。是Header plus plus得缩写2、与*.h类似,hpp是C++程序的头文件,是VCL专用的头文件,已预编译,是一般模板类

2021-01-07 15:10:52 1243

原创 静态多态和动态多态的区别

#include <iostream>using namespace std;class A{public: virtual void function() { cout << "I am A" << endl; }};class B :public A{public: void function() { cout << "I used to be A but now I am B" << endl; } void fun

2020-12-30 14:46:07 6705

原创 虚函数的作用

我们都知道,派生类是可以继承基类的函数的,但是,如果我们需要用基类的指针指向派生类对象时应该怎么 做呢,这时我们就需要在基类函数名前声明virtual关键字,这样基类指针就可以指向两个不同类的对象实现多态,代码如下:#include <iostream>using namespace std;class A{public: virtual void function1();};void A::function1(){ cout << "I am A functi

2020-12-25 16:40:04 73

原创 C++map的简单使用

头文件,必须包含 #include < map >map是STL的一个关联容器,它提供一对一的hash。例如:map<int,string> temp;第一个可以称为关键字(key),每个关键字只能在map中出现一次;第二个可能称为该关键字的值(value);map的基本操作函数:C++ Maps是一种关联式容器,包含“关键字/值”对begin() 返回指向map头部的迭代器clear() 删除所有元素count()

2020-12-18 09:20:48 115

原创 简单makefile的编写规则

1、我们平时常用的makefile如下图所示;2、我们在终端中执行指令[make]+[空格]+[文件名]即可执行,如果不写文件名则默认执行当前目录下makefile文件,没有会报错;3、默认执行第一条指令all,:前的相当于命令名称,后面的相当于命令或者依赖(其他命令);4、如果想要执行其他命令则需要在终端中输入[make]+[命令名称]+[文件名],如果不写文件名则默认执行当前目录下makefile文件,没有会报错;...

2020-12-10 11:45:03 611

原创 C++Thread方法

(1)、get_id:获取线程ID,返回一个类型为std::thread::id的对象。(2)、joinable:检查线程是否可被join。检查thread对象是否标识一个活动(active)的可行性线程。缺省构造的thread对象、已经完成join的thread对象、已经detach的thread对象都不是joinable。(3)、join:调用该函数会阻塞当前线程。阻塞调用者(caller)所在的线程直至被join的std::thread对象标识的线程执行结束。(4)、detach:将当前线程对象

2020-12-03 10:10:31 473

原创 关于SecureCRT工具的使用

第一步:打开SecureCRT.exe,点击左上角文件中的快速连接选项。第二步:在弹出的界面中主机名填IP地址,用户名填对方用户的用户名。第三步:在弹出的小窗口中填写需要连接的主机的用户名以及密码,点击连接即可连上。第四步:直接可以使用cd rm mkdir等常用Linux指令对其进行操作。注意:如果连接不上请尝试是否在同一网段,是否能ping通!!!...

2020-11-24 14:59:20 2114

原创 关于GDB报错:No symbol table is loaded

在GDB调试的时候出现这个问题是因为g++指令编译的时候没有加上参数 -g 的原因,需要使用g++ -g打开调试模式,如果使用makefile生成可执行程序,则需要在g++生成.o文件时加上 -g 参数

2020-11-18 08:50:09 4198

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除