指针optional

golang 重塑切片指针接口

result *[]xxx 1. 判断接口是否为空 2. 构造新指针类型,并赋值空切片 if reflect.ValueOf(result).Elem().IsNil() { resultType := reflect.TypeOf(result).Elem() t2 := reflect.New( ......
指针 接口 golang

变量、地址、内容、指针

变量、地址、内容、指针 变量:根据变量的类型不同,分配的内存地址大小也不同,例如整型变量需要4个字节,所以编译器为变量i分配的编号为1000~1003,而这里的编号也就是地址 定义变量 定义变量:定义一个变量,如:定义一个整型变量int,就是在内存中开辟4个字节的内存空间 赋值 对变量赋值,就是在变 ......
指针 变量 地址 内容

文件内指针的移动 、内数据的修改 、函数(次函数非数学中的函数)(非常重要)

### 文件的操作模式 ```python """ 1. 如果是t模式,read里面写的数字代表的是读取的字符个数 2. 如果是b模式,read里面写的数字代表的是读取的字节个数 3. 一个字节代表一个英文字符 4. 一个中文字符使用三个字节保存 """ # with open('a.txt', ' ......
函数 指针 数学 文件 数据

shared_ptr包装this指针构造bug

[toc] * 成员函数里用shared_ptr包装this指针,当shared_ptr析构了,就会调用this对象的析构函数,是非常可怕的事情。 ``` class A { void eat() { std::shared_ptr p(this); ptr->status = "吃了"; } } ......
指针 shared_ptr shared this ptr

【双指针】75. 颜色分类、荷兰国旗问题

#### [75. 颜色分类](https://leetcode.cn/problems/sort-colors/) 给定一个包含红色、白色和蓝色、共 n 个元素的数组 nums ,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。 我们使用整数 0、 1 和 2 分别表示 ......
国旗 指针 颜色 问题 75

Java8新特性之Optional类的妙用

该新特性也是翻java八股翻到的,感觉有点小用,所以记录一下 通常我们在调用方法获取参数时,常常会出现要避免空指针,从而进行一系列判断非空的代码,这部分十分冗长且啰嗦还重复,故可以使用一下今天的主角: **Java.util.Optional**类 1. 创建方式 共有三种方式供您选择 * 直接创建 ......
妙用 Optional 特性 Java8 Java

编写一个函数,令其交换两个int指针

#include <iostream> #include <Windows.h> using namespace std; void Change1(int*& a, int*& b) { int* tmp = a; a = b; b = tmp; } int main() { int a = 6, ......
指针 函数 两个 int

Mac环境下 罗技 Logi Options+ Backend Connection Problem

m1 芯片Mac Book,安装Logi Options+。打开后一直提示 Backend connection problem - click here to launch backend。报错图片如下 查询后得知,是一个启动程序没有打开。解决方案如下:下载一个App Cleaner & Unin ......
Connection Backend Options Problem 环境

LeetCode 658. Find K Closest Elements 二分+双指针

Given a sorted integer array `arr`, two integers `k` and `x`, return the `k` closest integers to `x` in the array. The result should also be sorted in ......
指针 LeetCode Elements Closest Find

双指针学习笔记

## 双指针常见种类 1. 快慢指针:左右两个指针的**步长不同**,可用于**判断是否有环**,以及寻找环的接点。 2. 对撞指针:左右指针的移动**方向不同**。 3. 滑动窗口、尺取法:右指针向右扩充,达到停止条件后右指针不动;左指针向右指针逼近,达到停止条件后左指针不动;右指针继续扩充。该双 ......
指针 笔记

指针数组,数组指针,函数

### 指针数组 指针数组,首先它是一个数组,数组里面的存储的是一个个指针,例如`int* p[5];`,指针数组里面的元素大小都是一样的,都是一个指针的大小,也就是8个字节(64位机器),`sizeof(p);`就为40个字节。**下标的本质:下标的本质就是偏移量,[]的含义是解引用** ``` ......
数组 指针 函数

【ChernoC++笔记】智能指针

【44】【Cherno C++】【中字】C++的智能指针 智能指针(Smart pointers)是C++中的一种特殊类型,用于管理动态分配的内存资源。智能指针通过封装指针,并在适当的时机自动释放内存,从而避免内存泄漏和悬空指针等常见问题。 unique_ptr ❓为什么叫做unique ptr? ......
指针 ChernoC 智能 笔记

文件位置指针

istream 和 ostream 都提供了用于重新定位文件位置指针的成员函数。这些成员函数包括关于 istream 的 seekg("seek get")和关于 ostream 的 seekp("seek put")。 seekg 和 seekp 的参数通常是一个长整型。第二个参数可以用于指定查找 ......
指针 位置 文件

通过IDA分析智能指针源码

首先我们看一看智能指针的内存结构 ### `std::shard_ptr` ```c++ std::shard_ptr{ T * ptr; std::_Ref_count * Rep; } ``` **`ptr`** 对象的指针 **`Rep`** 引用计数对象的指针 ```c++ std::_Re ......
指针 源码 智能 IDA

指针

### 指针 在我的理解中,指针是用来存放地址的。指针也有大小,对于不同类型的指针char,short,int,,,double,它们的指针大小都是8个字节,对于64位机器是这样的,而对于32位机器它们的指针大小都为4个字节。我的是64位操作系统: ``` #include int main() { ......
指针

非简单请求中POST请求的Options预请求403异常的跨域处理

非简单请求中POST请求的Options预请求403异常的跨域处理 https://codeleading.com/article/9125305704/ 在http请求中,post请求的数据在请求体中,在spring MVC中通过@RequestBody接收。 post请求属于http请求中的复杂 ......
Options POST 403

Golang 中的 Functional Options 模式和 Builder 模式

[TOC] ## 一、概述 今天我们来看 Golang 中的 **Functional Options 模式**和 **Builder 模式**。 ## 一、如何实例化/初始化一个对象 我们从最简单的版本开始,如下: ```go type Server struct { Port int Proto ......
模式 Functional Builder Options Golang

现代C++(Modern C++)基本用法实践:五、智能指针(Smart Pointers)

# 概述 c++效率较高的一个原因是我们可以自己定制策略手动申请和释放内存,当然,也伴随着开发效率降低和内存泄漏的风险。为了减少手动管理内存带来的困扰,c++提出了智能指针,可以帮助我们进行内存管理,有三种: 1. `std::unique_ptr` 是一种独占所有权的智能指针,它不允许多个指针指向 ......
指针 Pointers 智能 Modern Smart

双指针和双向搜索

## 双指针 也常叫 $two-pointers$ ,是一种简单又灵活的技巧和思想,单独使用可以轻松解决一些特定问题,和其他算法结合也能发挥多样的用处。 顾名思义,就是同时使用两个指针,在序列、链表结构上指向的是特定位置,在树、图上指向的是节点,通过同向移动,或者相向移动来维护、统计信息。 ### ......
指针 双向

算法小菜鸟成长记录Day01-二分查找和双重指针

# 二分查找和双重指针 今天是代码随想录刷题的第一天,刚开始刷的时候昏昏欲睡,其中用时3h - 主要实现以下几个部分 - 二分查找:其中二分查找中其收获最大部分就在于对左开右闭区间的理解,如果都是闭区间也就是【a,b】,那么在while中的条件就为while(left nums[mid]) { le ......
指针 算法 Day 01

114.你知道数组和指针的区别吗?

# 114.你知道数组和指针的区别吗? 1.数组在内存中是连续存放的,开辟一块连续的内存空间;数组所占存储空间:sizeof(数组名);数组大小:sizeof(数组名)/sizeof(数组元素数据类型); 2.用运算符sizeof 可以计算出数组的容量(字节数)。sizeof(p),p 为指针得到的 ......
数组 指针 114

野指针与空指针

# 一、野指针与空指针要注意 ## (1)野指针 > 野指针是一个指向未知(undefine)的 , 不确定地方的指针. > > "未知的,不确定的" , 指向的地方可能存在,可能不存在. > > 可能可以访问,也可能不可以访问. > 对野指针的访问,会有后果? > > > 可能可以访问,可能不可以 ......
指针

Maven中optional和scope

optional 将依赖项设为可选,这样依赖该项目的项目,不会引入该依赖,减少依赖传递,减小jar和war体积,默认值为 false 常见的有 spring-boot-devtools 热部署,junit 单元测试 <!--devtools 热部署--> <dependency> <groupId> ......
optional Maven scope

数据结构与算法 #18 下跳棋,极富想象力的同向双指针模拟

> ⭐️ **本文已收录到 [AndroidFamily](https://github.com/pengxurui/AndroidFamily),技术和职场问题,请关注公众号 [彭旭锐] 和 [BaguTree Pro] 知识星球提问。** > > 学习数据结构与算法的关键在于掌握问题背后的算法思 ......
跳棋 数据结构 指针 想象力 算法

106.你什么情况用指针当参数,什么时候用引用,为什么?

# 106.你什么情况用指针当参数,什么时候用引用,为什么? ## 1.使用引用参数的主要原因有两个 1.程序员能修改调用函数中的数据对象 2.通过传递引用而不是整个数据–对象,可以提高程序的运行速度 ## 2.一般的原则 1.对于使用引用的值而不做修改的函数: (1)如果数据对象很小,如内置数据类 ......
指针 参数 时候 情况 106

82.函数指针?

# 82.函数指针? 函数指针指向的是函数而非对象。和其他指针一样,函数指针指向某种特定类型。函数的类型由它的返回类型和形参类型共同决定,与函数名无关。例如: ```C++ //比较两个string对象的长度 bool lengthCompare(const string&, const strin ......
指针 函数 82

74.指针加减计算要注意什么?

# 74.指针加减计算要注意什么? 指针加减本质是对其所指地址的移动,移动的步长跟指针的类型是有关系的,因此在涉及到指针加减运算需要十分小心,加多或者减多都会导致指针指向一块未知的内存地址,如果再进行操作就会很危险。 举个例子: ```C++ #include using namespace std ......
指针 74

80.继承机制中对象之间如何转换?指针和引用之间如何转换?

# 80.继承机制中对象之间如何转换?指针和引用之间如何转换? ## 1.向上类型转换 将派生类指针或引用转换为基类的指针或引用被称为向上类型转换,向上类型转换会自动进行,而且向上类型转换是安全的。 ## 2.向下类型转换 将基类指针或引用转换为派生类指针或引用被称为向下类型转换,向下类型转换不会自 ......
之间 指针 机制 对象 80

77.C++中的指针参数传递和引用参数传递有什么区别?底层原理你知道吗?

# 77.C++中的指针参数传递和引用参数传递有什么区别?底层原理你知道吗? 1.指针参数传递本质上是值传递,它所传递的是一个地址值。 值传递过程中,被调函数的形式参数作为被调函数的局部变量处理,会在栈中开辟内存空间以存放由主调函数传递进来的实参值,从而形成了实参的一个副本(替身)。 值传递的特点是 ......
参数 指针 底层 原理 77

pycharm安装django失败,原因是报了一个ssl异常,也就是说和国外源站服务器ssl失败。 所以选用国内源站安装: 选中Options,输入:“ -i https://pypi.tuna.tsinghua.edu.cn/simple”

pycharm安装django失败,原因是报了一个ssl异常,也就是说和国外源站服务器ssl失败。 所以选用国内源站安装: 选中Options,输入:“ -i https://pypi.tuna.tsinghua.edu.cn/simple” ......
ssl tsinghua 也就是 原因 pycharm