以下源碼分析基于 objc4-781[https://opensource.apple.com/tarballs/objc4/] 類和對象 在前面我們提到過對象的本質(zhì)是一個結(jié)...
以下源碼分析基于 objc4-781[https://opensource.apple.com/tarballs/objc4/] 類和對象 在前面我們提到過對象的本質(zhì)是一個結(jié)...
以下源碼分析基于 objc4-781[https://opensource.apple.com/tarballs/objc4/] 對象的isa初始化 在 +[NSObject...
我們之前的篇幅介紹了對象,也知道對象是一個類的實例。那么它的結(jié)構(gòu)又是怎么樣的。為了更直接的觀察。我們做好充足的前戲提前定義好了兩個類。Person繼承NSObject,Dev...
對象的內(nèi)存分布 今天我們來研究一下對象的內(nèi)存對齊,首先我們定義一個Person類: 我們可以通過 lldb 來觀察 Person 對象在內(nèi)存中的分布。 通過 lldb 命令 ...
本文源碼基于objc4-781, macOS 10.15.6, Xcode Version 11.7 (11E801a) 在開發(fā)過程中我們會經(jīng)常使用到 + alloc 和 ...
OpenGL 的渲染架構(gòu)1.1. 數(shù)據(jù)傳遞方式1.2. 參數(shù)類型 投影方式2.1. 正投影2.2. 透視投影 存儲著色器3.1. 存儲著色器初始化3.2. 存儲著色器種類3....
前言 在我們?nèi)粘i_發(fā)過程中經(jīng)常會遇到離屏渲染,如果能正確的使用離屏渲染能為我們的App性能帶來很大提升。相反的如果不能正確的利用它,會為我們的App來的性能損耗。所以,如果能...
相信許多iOS開發(fā)者,都聽說過離屏渲染,大部分應(yīng)該是面試的時候被問及。然而真正知道離屏渲染的原理的開發(fā)者并不很多。下面我們就來深入探討一下離屏渲染。 一、什么是離屏渲染 在正...
屏幕顯示圖像的原理 位圖(Bitmap) : 是一種數(shù)據(jù)結(jié)構(gòu)。一個位圖是由若干個像素組成,每個像素的顏色信息由RGB組合或者灰度值表示。根據(jù)位深度,可將位圖分為1、4、8、1...
1.環(huán)境搭建 1.1 準(zhǔn)備資源 GLTools glew libGLTools.a 1.2 創(chuàng)建工程 創(chuàng)建一個新的工程 -> macOS -> Command Line To...
0. 初識圖形API OpenGL(Open Graphics Library)是?個跨編程語?言、跨平臺的編程圖形程序接?口,它將計算機(jī)的資源抽象稱為?個OpenGL的對象...
OpenGL + OpenGL ES +Metal 系列文章匯總 OpenGL中三角形的繪制,就類似于學(xué)習(xí)編程時的Hello world,是一個入門級的使用,重點(diǎn)在于理解圖形...
圖形API1.1. 圖形API可以解決什么問題? OpenGL上下文 (context) OpenGL狀態(tài)機(jī) 渲染 頂點(diǎn)數(shù)組(VertexArrat)和頂點(diǎn)緩沖區(qū)(Vert...
括號匹配 題目: 假設(shè)表達(dá)式中允許包含兩種括號:圓括號與?括號,其嵌套順序隨意,即() 或者[([][])]都是正 確的.?這[(]或者(()])或者([()) 都是不正確的...
隊列具有新進(jìn)先出(FIFO)的特點(diǎn). 1 隊列的順序結(jié)構(gòu) 1.1 數(shù)據(jù)結(jié)構(gòu) 1.2 入棧和出棧的實現(xiàn) 假設(shè)一個可以容納5個元素的隊列,如下: 我們使用 x 表示這個位置還沒有...
1 棧的特點(diǎn) 棧具有先進(jìn)后出(FILO)的特點(diǎn),既先進(jìn)后出,后進(jìn)先出。 2 棧的順序儲存結(jié)構(gòu)實現(xiàn) 2.1 數(shù)據(jù)定義 順序儲存是使用數(shù)組來儲存棧中的數(shù)據(jù)。 2.2 順序棧的實現(xiàn)...