- 博客(8)
- 收藏
- 关注
原创 cpp未归类知识点二万能引用
1.1template<typename T>void func(const T&abc){ cout<<abc<<endl;}//调用模板函数时 给的参数会对T基本类型产生影响 abc的类型也会对T的类型产生影响1.2universial reference&&右值引用void myfunc(int &&tmprv){ cout << tmprv <&
2022-01-19 14:41:56
465
原创 cpp未归类知识点一 可调用对象&函数指针&map容器存储指针函数
1、函数对象、 函数调用运算符()如果类中重载圆括号,那就可以像使用函数一样使用该类对象。#include<iostream>using namespace std;class ReturnValue{ public: ReturnValue(){} ReturnValue(int v){cout<<v<<endl;}//有参构造 void operator()(int value)const{
2022-01-19 13:55:48
943
原创 vmware显示不全问题解决
试过ALT +鼠标左键拖动的方式,结果只能往下拖动还有左右拖动,还是看不到下一步的按键。解决方法:TAB 按键可以代替鼠标进行选择 即使有些按键隐藏了,仍可以通过Tab按键进行选择,需要小心的试,找到下一步的按键之后,按下回车键即可。...
2022-01-17 13:51:23
1383
1
原创 强制类型转换
1、隐式类型转换:系统会自动进行,无需介入//会造成一定的精度损失int a=3+34.9double n=3+35.92、强制类型转换2.1、c语言风格强制类型转换int a=(int)2.3;//强制类型转换//命名的强制类型转换通用形式强制类型转换名<type>(express);type:目标类型express:要转换的对象2.2、static_cast:静态转换编译的时候会进行类型转换,这个静态类型转换和c强制类型转换差不多可用于:(1)相关类型转换
2022-01-17 09:41:50
3080
原创 string简单操作
1、字符串初始化 //常用初始化方法 string s1;//默认构造 string s2("hello");//有参构造 string s3(s2);//拷贝构造 strng s4(int num,'x');//通过字符初始化 2、字符串常用方法2.1判断是否为空empty();string s1;if(s1.empty()){}else{}2.2返回字节/字符数目sizeof()/length()string s1("hello");s1.size();s1.le
2022-01-16 16:47:40
278
原创 快速理解常量指针、指针常量、常量引用修改值与地址的问题
1、*常量指针和指针常量,如何判断值可改还是地址可改(p表示值,p表示地址)1.1、如果const 修改得是*p即const 在*p左边,可以认为const修饰得是p指针所指向得内容,说明内容不可以修改,但是地址可以修改。当然值可以通过str[index]='x';的方式可以修改,只是不能用指针来操作了。注意:const char*p等价于char const *p两种方式一个意思,都表示常量指针//常量指针,指针修饰得是p指向的值char str[]="hello";const char*
2022-01-16 15:36:32
824
原创 函数前置声明与后置声明、内联函数
1、函数常规前置声明//常规函数声明形式void func(int&,int&){ pass}2、新特性 函数后置声明//C++11出现得后置声明auto func(int&,int&) -> int{ pass}3、inline function//函数前面加inline变成内联函数/**//编译阶段对内联函数进行处理提高运行效率 //cpp关键字constexptr也是为了在编译阶段处理常量以提高程序效率//高雅一点就是在编译阶
2022-01-16 14:56:30
643
1
原创 c++左值与右值
int a=10;int b=20;首先可以简单认为等号左边的变量为左值,等号右边为右值,这当然是不准确的。更深一点,左值是存储在内存中,有明确地址的称为左值。例如a,b在内存中存储,都有一块地址。右值是可以为左值提供数据值的数据。例如10,20只是起到赋值的作用。a=b;例外情况,在这里虽然 b在式子右边为a赋值,但是b也是有一块内存存储的,所以b也是左值,不能简单认为b是右值。...
2022-01-12 19:02:12
212
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人