八股(One Day one)

? ? ? ? 最近老是看到一些面試的視頻,對于視頻內部面試所提到的八股文,感覺是知道是什么,但是要說的話,卻又不知道該怎么說(要不咋稱之為八股文呢),所以就想到寫一篇八股文總結的博客,以便進行學習和復習。

? ? ? ??目前的計劃安排是一天完成一道,具體是哪個主題的不一定,盡可能做到一天一道,慢慢豐富起內容。


golang基礎

1、golang中new和make的作用,以及他們的區別

自己想的(可以忽略),直接看下面標準答案:

new:new的作用就是傳入一個類型,創建一個對象,并返回這個對象的指針。

make:make就是為slice、map、chan、channel初始化空間

區別:沒啥區別呀,就不是一個東西😥。(呃呃呃,自己腦子里的就是不靠譜)

標準回答:

new函數的作用

  • 在 Go 語言中,new是一個內置函數。它的主要作用是分配內存,并且將這塊內存初始化為零值,然后返回指向這塊內存的指針

make函數的作用

  • make也是 Go 語言中的一個內置函數,但它和new有不同的用途。make主要用于創建切片(slice)、映射(map)和通道(channel)這三種復合類型,并且返回一個初始化后的(非零值)對象。
  • 對于切片,make會分配一個底層數組,并返回一個切片對象,這個切片對象包含了長度(len)和容量(cap)信息。例如,make([]int, 2)會創建一個長度為2int類型切片,其底層數組已經被分配并且元素被初始化為int類型的零值(也就是0)。
  • 對于映射,make會創建一個空的映射,這個映射可以用于存儲鍵 - 值對。例如,make(map[string]int)會創建一個鍵為string類型,值為int類型的空映射。
  • 對于通道,make會創建一個通道,可以用于在不同的goroutine之間進行通信。例如,make(chan int)會創建一個int類型的通道。

newmake的區別

  • 功能用途不同
    • new主要用于分配內存并返回指向該內存的指針,它可以用于任何類型,只要你想得到一個指向該類型零值的指針。而make主要用于初始化并返回切片、映射和通道這三種復合類型,它返回的是一個已經初始化的非零值對象
  • 返回值類型不同
    • new返回的是一個指針,類型是*TT是你傳入的類型)。例如new(int)返回*int。而make返回的是切片、映射或通道本身,例如make([]int, 5)返回[]int類型的切片,make(map[string]int)返回map[string]int類型的映射,make(chan int)返回chan int類型的通道。
  • 內存初始化不同
    • new只是將分配的內存清零,也就是將值初始化為該類型的零值。而make對于切片會分配底層數組并初始化元素;對于映射會創建一個空的可以存儲鍵 - 值對的數據結構;對于通道會創建一個可以用于通信的通道對象,這些初始化過程比new的簡單清零操作更復雜。

????????


操作系統


數據結構


計算機網絡


Linux


Mysql


Redis


分布式


本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/63940.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/63940.shtml
英文地址,請注明出處:http://en.pswp.cn/web/63940.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Rust 在前端基建中的使用

摘要 隨著前端技術的不斷發展,前端基礎設施(前端基建)的建設已成為提升開發效率、保障產品質量的關鍵環節。然而,在應對復雜業務場景與高性能需求時,傳統的前端技術棧逐漸暴露出諸多不足。近年來,Rust語言…

豆包MarsCode:a替換函數

問題描述 思路分析 在這個問題中,我們的目標是將字符串中的所有小寫字母 a 替換為 "%100"。為了實現這一點,我們需要分析問題的核心需求和合理的解決方案。以下是分析和思路的詳細步驟: 1. 理解問題 給定一個字符串 s&#xff0…

人臉生成3d模型 Era3D

從單視圖圖像進行3D重建是計算機視覺和圖形學中的一項基本任務,因為它在游戲設計、虛擬現實和機器人技術中具有潛在的應用價值。早期的研究主要依賴于直接在體素上進行3D回歸,這往往會導致過于平滑的結果,并且由于3D訓練數據的限制&#xff0…

【點估計】之Python實現

點估計是一種統計推斷方法,它利用樣本數據來估計總體的未知參數。在概率論和數理統計的框架下,點估計將總體的未知參數視為一個確定的值或一個具體的點,并試圖通過樣本數據來找到這個值的最佳估計。以下是對點估計的詳細解釋: 一、定義與原理 定義:點估計是根據樣本數據估…

rust與python互通

互通三件套 rust側與python互通的三個庫: pyo3 pythonize serde pyo3 pyo3跟用Python C API寫python擴展有點類似,核心是: #[pymodule] #[pyfunction]兩個注解。前者對應Py_InitModule,后者對應PyMethodDef。 下面是其它博…

Ubuntu系統下 npm install -g tauri 報錯問題處理

處理在安裝 Tauri 時遇到的問題,可以按照以下步驟進行操作 npm install -g taurinpm warn deprecated inflight1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async …

信貸域——互聯網金融理論基礎

摘要 互聯網金融這種新興的金融業態近幾年飛速發展,規模不斷擴大,互聯網金融在對我國金融體系和經濟發展影響中所占的分量越來越重,一定程度上也推動了互聯網金融理論的發展。 互聯網金融與傳統金融都是金融,有著相近的理論基礎。…

C++軟件設計模式之享元模式(FlyWeight)

享元(Flyweight)模式的動機與意圖 動機 享元模式的主要動機是通過共享對象來減少內存使用,從而提高系統的性能。在某些情況下,系統中可能有大量細粒度的對象,這些對象具有共同的部分狀態,而這些狀態可以共…

LightGBM分類算法在醫療數據挖掘中的深度探索與應用創新(上)

一、引言 1.1 醫療數據挖掘的重要性與挑戰 在當今數字化醫療時代,醫療數據呈爆炸式增長,這些數據蘊含著豐富的信息,對醫療決策具有極為重要的意義。通過對醫療數據的深入挖掘,可以發現潛在的疾病模式、治療效果關聯以及患者的健康風險因素,從而為精準醫療、個性化治療方…

|-牛式-|

題目描述 下面是一個乘法豎式,如果用我們給定的那幾個數字來取代 * ,可以使式子成立的話,我們就叫這個式子牛式。 * * * x * * ------- * * * * * * ------- * * * * 數字只能取代 * ,當然第一位不能為 0 。 寫一個程序找…

es 3期 第18節-分頁查詢使用避坑的一些事

#### 1.Elasticsearch是數據庫,不是普通的Java應用程序,傳統數據庫需要的硬件資源同樣需要,提升性能最有效的就是升級硬件。 #### 2.Elasticsearch是文檔型數據庫,不是關系型數據庫,不具備嚴格的ACID事務特性&#xff…

STM32串口第一次接收數據時第一個字節丟失的問題

解決方法:開啟中斷之前,先清除標志位【1】。 串口清除標志位: __HAL_UART_CLEAR_PEFLAG(&huart1); HAL_UART_Receive_IT(&huart1,&RxUart, 1); 定時器清除標志位: __HAL_TIM_CLEAR_FLAG(&htim3,TIM_FLAG_UPDATE);…

深度學習中的殘差網絡、加權殘差連接(WRC)與跨階段部分連接(CSP)詳解

隨著深度學習技術的不斷發展,神經網絡架構變得越來越復雜,而這些復雜網絡在訓練時常常遇到梯度消失、梯度爆炸以及計算效率低等問題。為了克服這些問題,研究者們提出了多種網絡架構,包括 殘差網絡(ResNet)、…

Pytorch | 從零構建EfficientNet對CIFAR10進行分類

Pytorch | 從零構建EfficientNet對CIFAR10進行分類 CIFAR10數據集EfficientNet設計理念網絡結構性能特點應用領域發展和改進 EfficientNet結構代碼詳解結構代碼代碼詳解MBConv 類初始化方法前向傳播 forward 方法 EfficientNet 類初始化方法前向傳播 forward 方法 訓練過程和測…

Vue 2 中實現雙擊事件的幾種方法

在 Vue 2 中處理用戶交互,特別是雙擊事件,是一個常見的需求。Vue 提供了一種簡潔的方式來綁定事件,包括雙擊事件。本文將介紹幾種在 Vue 2 中實現雙擊事件的方法。 1. 使用 dblclick 指令 Vue 允許你直接在模板中使用 dblclick 指令來監聽雙…

音視頻入門基礎:MPEG2-TS專題(20)——ES流簡介

《T-REC-H.222.0-202106-S!!PDF-E.pdf》第27頁對ES進行了定義。ES流是PES packets(PES包)中編碼的視頻、編碼的音頻或其他編碼的比特流。一個ES流(elementary stream)在具有且只有一個stream_id的PES packets序列中攜帶&#xff1…

天水月亮圈圈:舌尖上的歷史與傳承

在天水甘谷縣,有一種美食如同夜空中的明月,散發著獨特的魅力,它就是有著百年歷史的月亮圈圈。月亮圈圈原名甘谷酥圈圈,據傳,由大像山鎮蔣家莊一姓李的廚師創制而成,后經王明玖等廚師的光大傳承,…

YOLOv11融合[CVPR2023]FFTformer中的FSAS模塊

YOLOv11v10v8使用教程: YOLOv11入門到入土使用教程 YOLOv11改進匯總貼:YOLOv11及自研模型更新匯總 《Efficient Frequency Domain-based Transformers for High-Quality Image Deblurring》 一、 模塊介紹 論文鏈接:https://arxiv.org/abs…

java如何使用poi-tl在word模板里渲染多張圖片

1、poi-tl官網地址 http://deepoove.com/poi-tl/ 2、引入poi-tl的依賴 <dependency><groupId>com.deepoove</groupId><artifactId>poi-tl</artifactId><version>1.12.1</version></dependency>3、定義word模板 釋義&#xf…

《信管通低代碼信息管理系統開發平臺》Windows環境安裝說明

1 簡介 《信管通低代碼信息管理系統應用平臺》提供多環境軟件產品開發服務&#xff0c;包括單機、局域網和互聯網。我們專注于適用國產硬件和操作系統應用軟件開發應用。為事業單位和企業提供行業軟件定制開發&#xff0c;滿足其獨特需求。無論是簡單的應用還是復雜的系統&…