自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 vscode 无法使用自己写的类

请看这个说明文档,写的很好,直接验证是ok的。

2024-05-20 15:12:11 91

原创 c++ struct数组

/ 创建一个包含3个Point结构体的数组。// 定义一个名为Point的结构体。c++ struct数组。

2024-05-07 10:51:25 119

原创 android studio 无法debug native

Run-> Edit Configurations-> Debugger下的Symbol Directors是否为空。网上各种方法都试了,发现任然不行,然后就搜到了一篇文章,网址如下。如果为空,请点击+号,选择你的项目目录,保存即可。就解决了,赶紧记录一下。

2023-05-26 13:48:42 337

原创 c++中的类一直取同一个对象

c++ getInstance

2022-09-26 14:20:32 423

原创 c++类先运行哪个变量的问题

c++类中的构造函数

2022-09-26 14:03:12 314

原创 android studio 快捷键

android studio 快捷键

2022-07-25 11:08:57 335

原创 android studio commit 时非常慢

android studio提交git时很慢

2022-07-07 15:36:02 1138

原创 crc16手算

CRC16 手算方法:具体见B站:https://www.bilibili.com/video/BV1V4411Z7VA?spm_id_from=333.337.search-card.all.click

2022-05-17 14:25:49 164

原创 The minCompileSdk (30) specified in a

android studio 报错:The minCompileSdk (30) specified in a有些时候我们升级as各种插件或者其他东西的版本后,会出现这种情况。解决方法:在 APP的Gradle文件的package中输入如下代码:configurations.all { resolutionStrategy { force 'androidx.core:core-ktx:1.6.0' }}并且:在build.gradle 文件中添加compileSdkVersion

2022-05-09 15:00:56 779

原创 android studio一开始能运行,加了一些代码后运行报错

有时就会这样,可以试一试菜单栏中的"Build",然后选择"clean project",然后选择"rebuild project"

2021-12-16 13:26:26 1255

原创 android studio 无法调试cpp代码

android studio之前的版本都是要下载LLDB,然后才能调试cpp,现在不需要了,只需要下载SDK、NDK,就可以正常调试cpp了。如果有了这些还是不能调试,那么打开菜单栏的“Run”,打开“Edit configurations”,选择“Debugger”,选择“Dual(Java+Native)”。...

2021-12-16 10:07:30 4868

原创 Manifest merger failed : uses-sdk:minSdkVersion 21 cannot be smaller than version 24

如题,如果使用android studio中出现了Manifest merger failed : uses-sdk:minSdkVersion 21 cannot be smaller than version 24 declared in library [:share] D:\work\project\location-android\share\build\intermediates\library_manifest\debug\AndroidManifest.xml as the library

2021-12-11 15:27:14 7068

原创 c++自己遇到的比较重要的知识点

c++知识点数组初始化时,size一般都是需要写数字,如果想写变量,那么就需要使用new。 int a = 5; int b[a]; // 报错 表达式必须含有常量值 int *b = new int[a]; // 正确 int *c = &5; // 错误,因为5是没有指针的,取不了地址 int *c = &a; // 正确new出来的变量是放在堆区的,所以在运行结束或者不用了之前,需要删掉,不然会一直占着内存空间。正确的删除方式是先delete,然后指向NU

2021-09-15 15:31:57 62

原创 git 使用心得

git使用方法具体请看廖雪峰git教程 强烈建议有不会的地方就去这里翻阅一下,讲的很不错。怎么将远程仓库和本地仓库联系起来先在本地创建一个ssh key,右键桌面,点击git bash here,输入ssh-keygen -t rsa -C "youremail@example.com",一路回车。会在户主目录(C:\Users\Administrator)生成 .ssh 的文件夹,并且在里面生成2个文件,id_rsa和id_rsa.pub,其中id_rsa是私钥,不能泄露出去,id_rsa.pub

2021-09-03 15:30:29 65

原创 c++ 中vector的初始化

可以在定义一个vecor的时候就进行初始化void main(){ vector<int> b = { 1,2,3,4,5,6 }; // 运行成功}初始化一个vector<complex>void main(){ vector < complex < double >> a = { {1,2},{3,4},{5,6} }; // 运行成功 注意里面每个complex都要有大括号}初始化一个vector<vector&g

2021-08-06 13:22:56 544

原创 数组的传入与传出

数组的传入:1,传入指针;2,直接传入 变量名[5];3 直接传入 变量名[]而且上面的三种方式,其实都是传入的是实参,而不是形参,可以看到main函数中数组的数都变了。数组的传出:无法传出数组,只能传出数组的第一个数的指针。void changeArray(int* a,int size); //传入的是数组void main(){ int a[] = { 1,2,3,4,5 }; changeArray(a,5); cout << a[0]<<endl;

2021-08-03 16:25:24 752

原创 c++ 指针

int b; b = 8; int* a; a = &b;//取地址操作只能针对变量,不能直接对数字进行取地址 cout << *a << endl; int c[] = { 1,2 }; cout << *c << endl; // c数组,c这个变量代表的就是c[0]的指针 int* ptr = NULL; // 在定义指针时,一开始要赋值为NULL,也就是空指针 cout << &ptr <&lt.

2021-08-03 11:25:34 61

原创 matlab 中的conv2卷积详解

具体请看网址:conv2详解

2021-07-19 13:06:16 275

原创 多态的原理以及实现

具体详情,请见网址:https://www.bilibili.com/video/BV1et411b73Z?p=136多态的实现:目前学了2种实现方式#include <iostream>using namespace std;class AbstractCalculator{public: virtual int getResult() { return 0; } int m_A; int m_B;};class AddOperator : public Abs.

2021-07-06 14:16:02 65

原创 c++多态的基本使用

#include <iostream>using namespace std;class Person{public: virtual void speak() // 这里必须要加virtual,没有virtual就出错。 // 如果不写virtual,那么指针地址就是早绑定,也就是编译时就绑定了,写上,那就是运行时再绑定地址 // 这里叫做虚函数 { cout << "人类在说话" << endl; }};class Man : p

2021-07-05 14:12:28 77

原创 当本类中存在其他类成员时,先构造其他类,再构造本类

当本类中存在其他类成员时,先构造其他类,再构造本类

2021-07-02 15:32:58 68

原创 类中初始化变量的另一种方法

class Person{ int m_A; int m_B; Person(int a,int b,int c) { m_A = a; m_B = b; }}上面的构造函数等同于Person(int a,int b,int c):m_A(a),m_B(b) { }

2021-07-02 15:23:50 71

原创 深拷贝与浅拷贝

浅拷贝: 系统自定义的拷贝函数就是浅拷贝,也就是直接将值赋值给另一个变量,而且复制的指针都是一样的;深拷贝:深拷贝是为了解决一种情况,那就是在类中,我们可能需要新建个存在于堆上的数据(new 指针、static静态数据),然后我们再调用浅拷贝函数时,会调用一次析构函数,析构函数会释放掉堆上的数据,然后我们就无法再调用堆上的这个数据了,就会报错。具体代码如下:#include <iostream>using namespace std;class Person{public: int

2021-07-02 15:17:23 50

原创 构造函数调用、生成规则

c++中,每创建一个类,系统都会默认生成一个构造、析构、拷贝函数;如果类中自定义了有参构造函数,那么系统就不自己定义无参构造函数,但是仍然会定义拷贝函数;如果类中定义了拷贝函数,那么系统就不定义无参构造、析构函数了,就要我们自己写了;class Person{public: Person (const Person &p){ m_Age = p.m_Age; } int m_Age;}void main(){ Person p1; // 这里就出错了,因为类中只有拷贝函

2021-07-02 13:54:11 93

原创 拷贝函数、构造函数

Person (const Person &p) // 必须要加const,而且传入的必须是引用。加const就是说p是无法进行修改。{ // 将p身上的所有成员复制给本身 m_Age = p.m_Age;}实例化对象时,不要加括号,除非要传入参数。不然会出错的。因为编译器会认为这是在创建一个函数。Person p1(); // 返回的是Person类,函数名叫p1Person p1; // 这样才是对的Person (10) // 创建了一个匿名对象,这

2021-07-02 13:37:08 60

原创 c++ struct和class区别

struct默认的访问权限是publicclass默认的访问权限是privatestruct使用起来和class很像,struct也可以像class一样进行实例化。

2021-07-02 10:38:44 62

原创 类的访问权限

public:类内可以访问,类外不可以访问,子类可以访问protected:类内可以,类外不可以,子类可以private: 类内可以,类外不可以,子类不可以

2021-07-02 10:36:11 136

原创 子类和父类中有同名成员

子类和父类中有同名成员变量或者成员函数时,肯定访问的是子类的成员,如果想访问父类的成员呢,就要这么操作。子类.父类::成员名因为当出现同名时,编译器会隐藏父类所有的成员,包括重载的成员函数。...

2021-07-02 10:18:41 427

原创 父类和子类构造顺序

先构造父类,再构造子类,然后先析构子类,再析构父类。相当于是,父类总是存在的时间比子类长。子类只要存在,父类就存在。

2021-07-02 09:47:21 325

原创 子类继承其实是继承所有成员

子类继承了父类所有的非静态成员,子类的size也就变大#include <iostream>using namespace std;class Base{public: int m_A; static const int m_F = 10;protected: int m_B;private: int m_C;};class Son :public Base{public: int m_D;};void test(){ cout << si

2021-07-02 09:43:20 282

原创 c++各种继承方式

2021-07-01 17:27:54 65

原创 c++匿名对象

c++中,可以不将类进行实体化,直接用类名+()的形式生成一个类,这个类执行这句话后,会再次被释放掉#include <iostream>using namespace std;class Person{public: int m_Age; string m_Name; Person(string name,int age) { m_Age = age; m_Name = name; }};void test(){ cout << Person

2021-07-01 17:14:11 482

原创 赋值符重载

这是错误的,具体修改就用到了赋值运算符重载#include <iostream>using namespace std;class Person{public: int* m_Age; // 这里用到了指针,这样开辟的成员变量就在堆中。 // 由于变量是在堆中,所以要程序员自己释放掉,new用delete; // malloc用free Person(int age) { m_Age = new int(age); } ~Person() {

2021-07-01 16:53:30 69

原创 static赋值的2种方法

#include <iostream>using namespace std;class Person{ public: static const int m=10;};int main(){ cout << Person::m << endl; return 0;}#include <iostream>using namespace std;class Person{public: static int m=

2021-06-30 17:09:20 995

原创 C++堆、栈及静态数据区等五大区分析

C++堆、栈及静态数据区等五大区分析

2021-06-30 16:10:18 49

原创 运算符递增

这里要注意的是前置递增和后置递增,而且着重要看返回的是引用,还是新建的类。这里还重载了左运算符,就是<<,这样就可以输出我们自定义的类了。#include <iostream>using namespace std;class MyInteger{ friend ostream& operator<< (ostream & cout, MyInteger & myint);public: MyInteger() { m_Nu

2021-06-30 10:34:46 77

原创 怎么给新员工安装git

详情请见https://www.cnblogs.com/wuaihua/p/13164527.html。

2021-06-18 13:33:09 50

原创 c++ 在android studio平台上无法导入txt文件

需要在java那边导入txt文件。

2021-06-15 16:42:58 117 1

原创 c++ 传递数组给函数

数组不需要传递指针,或者引用,直接传入数组,就相当于传递的是指针。具体见下面的代码void fun1(int arr[]){ arr[0] = arr[1] + arr[2];}int main(){ int a[] = { 1,2,3 }; fun1(a); printf("%d", a[0]);}...

2021-06-11 15:14:11 147 1

原创 c++中vector.size()报错

在visual studio中使用for (int i = 0; i < vector.size(); i++) 时报错,因为vector.size()是无符号整数型,i是int型,解决方法就是定义一个int size_t =vector.size().于是,代码就变成`int size_t = vector.size();for (int i = 0; i < size_t; i++) ...

2021-06-11 11:22:57 1673

空空如也

空空如也

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

TA关注的人

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