信息安全系統設計基礎第三周學習總結—20135227黃曉妍

一.Vim編輯器

1.Vim的六種模式

2.Vim三種常用模式的使用方式,以及三者的切換。打開Vim即默認進入普通模式,按i進入插入模式,按esc從插入模式退出普通模式,再按:進入命令行模式。

              普通模式下游標的移動

按鍵

說明

h

l

右(小寫L)

j

k

w

移動到下一個單詞

b

移動到上一個單詞

普通模式進入插入模式的方式

命令???????? 說明

i??????? 在當前光標處進行編輯

I??????? 在行首插入

A?????? 在行末插入

a?????? 在光標后插入編輯

o?????? 在當前行后插入一個新行

O????? 在當前行前插入一個新行

cw??? 替換從光標所在位置后到一個單詞結尾的字符

                命令行模式退出的方式:

命令

說明

:q!

強制退出,不保存

:q

退出

:wq!

強制保存并退出

:w <文件路徑>

另存為

:saveas 文件路徑

另存為

:x

保存并退出

:wq

保存并退出

普通模式下退出vim

普通模式下輸入Shift+zz即可保存退出vim

?

3.Vim在普通模式下的刪除

命令

說明

x

刪除游標所在的字符

X

刪除游標所在前一個字符

Delete

同x

dd

刪除整行(其實是剪切,后邊可以使用p粘貼)

dw

刪除一個單詞(不適用中文)

d$或D

刪除至行尾

d^

刪除至行首

dG

刪除到文檔結尾處

d1G

刪至文檔首部

?

4.普通模式下命令的重復執行(1)按.可執行上次命令,可以按多次。(2)數字倍命令:例如8dd,表示刪除8行。

5.普通模式下游標的快速跳轉(1)以行為單位跳轉(2)在一行內,單詞單詞之間,或者字母字母之間的跳轉

            1.行間跳轉(ctrl+o可以回到光標上次所在位置)

命令

說明

nG(n Shift+g)

游標移動到第 n 行(如果默認沒有顯示行號,請先進入命令模式,輸入:set nu以顯示行號)

gg

游標移動到到第一行

G(Shift+g)

到最后一行

            2.行內跳轉

普通模式下使用下列命令在行內按照單詞為單位進行跳轉

命令

說明

w

到下一個單詞的開頭

e

到下一個單詞的結尾

b

到前一個單詞的開頭

ge

到前一個單詞的結尾

 0或^

到行頭

$

到行尾

f<字母>

向后搜索<字母>并跳轉到第一個匹配的位置(非常實用)

F<字母>

向前搜索<字母>并跳轉到第一個匹配的位置

t<字母>

向后搜索<字母>并跳轉到第一個匹配位置之前的一個字母(不常用)

T<字母>

向前搜索<字母>并跳轉到第一個匹配位置之后的一個字母(不常用)

7.普通模式下的復制和粘貼,剪切和粘貼

  • 普通模式中使用y復制
    • 普通模式中,yy復制游標所在的整行(3yy表示復制3行)
    • 普通模式中,y^?復制至行首,或y0。不含光標所在處字符。
    • 普通模式中,y$?復制至行尾。含光所在處字符。
    • 普通模式中,yw?復制一個單詞。
    • 普通模式中,y2w?復制兩個單詞。
    • 普通模式中,yG?復制至文本末。
    • 普通模式中,y1G?復制至文本開頭。
  • 普通模式中使用p粘貼
    • 普通模式中,p(小寫)代表粘貼至光標后(下一行)
    • 普通模式中,P(大寫)代表粘貼至光標前(上一行)

?

dd刪除命令就是剪切,你每次dd刪除文檔內容后,便可以使用p來粘貼

8.普通模式下替換和撤銷

命令說明
r+<待替換字母>將游標所在字母替換為指定字母
R連續替換,直到按下Esc
cc替換整行,即刪除游標所在行,并進入插入模式
cw替換一個單詞,即刪除一個單詞,并進入插入模式
C(大寫)替換游標以后至行末
~反轉游標所在字母大小寫
u{n}撤銷一次或n次操作
U(大寫)撤銷當前行的所有修改
Ctrl+rredo,即撤銷undo(撤銷本身)的操作

9.(普通)縮進,(命令行)shiftwidth,(命令行)文本居中靠右靠左調整 ? ?

  • 普通模式下輸入>>?整行將向右縮進(適用格式化代碼)
  • 普通模式下輸入<<?整行向左回退
  • 普通模式下輸入:進入命令行模式下對shiftwidth值進行設置可以控制縮進和回退的字符數

在命令行模式下,set shiftwidth?可以得出現在時縮進幾格,set shiftwidth=12表示自定義縮進12格

ce文本該行居中 ? ri文本該行居右 ? ?le居左

10.普通模式下快速查找

    /字符串,回車    向下查找

   ?字符串,回車     向上查找

   n          下一個出現關鍵字的地方

   N          上一個出現關鍵字的地方

?

?

  • 普通模式下輸入\*向上尋找游標所在處的單詞
  • 普通模式下輸入\#同上,#是向后(下)找
  • 普通模式下輸入g\*同\*?,但部分符合該單詞即可
  • 普通模式下輸入g\#同\#?,但部分符合該單詞即可

?

11.多文件編輯

?

1.使用vim編輯多個文件

?

編輯多個文件有兩種形式,一種是在進入vim前使用的參數就是多個文件。另一種就是進入vim后再編輯其他的文件。 同時創建兩個新文件并編輯

?

$ vim 1.txt 2.txt

?

默認進入1.txt文件的編輯界面

?

  • 命令行模式下輸入:n編輯2.txt文件,可以加!即:n!強制切換,之前一個文件的輸入沒有保存,僅僅切換到另一個文件
  • 命令行模式下輸入:N編輯1.txt文件,可以加!即:N!強制切換,之前文件內的輸入沒有保存,僅僅是切換到另一個文件

?

2.進入vim后打開新文件

?

  • 命令行模式下輸入:e 3.txt?打開新文件3.txt
  • 命令行模式下輸入:e#?回到前一個文件
  • 命令行模式下輸入:ls可以列出以前編輯過的文檔
  • 命令行模式下輸入:b 2.txt(或者編號)可以直接進入文件2.txt編輯
  • 命令行模式下輸入:bd 2.txt(或者編號)可以刪除以前編輯過的列表中的文件項目
  • 命令行模式下輸入:e! 4.txt,新打開文件4.txt,放棄正在編輯的文件
  • 命令行模式下輸入:f?顯示正在編輯的文件名
  • 命令行模式下輸入:f new.txt,改變正在編輯的文件名字為new.txt

?

3.恢復文件

?

如果因為斷電等原因造成文檔沒有保存,可以采用恢復方式,vim -r進入文檔后,輸入:ewcover 1.txt來恢復

?

$ vim -r 1.txt

12.可視模式

  • 在普通模式下輸入v(小寫),進入字符選擇模式,就可以移動光標,光標走過的地方就會選取。再次按下v會后就會取消選取。
  • 在普通模式下輸入Shift+v(小寫),進入行選擇模式,按下V之后就會把整行選取,您可以上下移動光標選更多的行,同樣,再按一次Shift+v就可以取消選取。
  • 在普通模式下輸入?Ctrl+v(小寫),這是區域選擇模式,可以進行矩形區域選擇,再按一次Ctrl+v取消選取。
  • 在普通模式下輸入d刪除選取區域內容
  • 在普通模式下輸入y復制選取區域內容

13.視窗操作

在命令行模式下輸入:new?打開一個新的vim視窗,并進入視窗編輯一個新文件。分別在不同視窗的命令行模式下輸入:q!退出多視窗編輯。

  • 命令行模式下輸入:sp 1.txt?打開新的橫向視窗來編輯1.txt
  • 命令行模式下輸入:vsp 2.txt?打開新的縱向視窗來編輯1.txt
  • 普通模式下Ctrl-w s?將當前窗口分割成兩個水平的窗口
  • 普通模式下Ctrl-w v?將當前窗口分割成兩個垂直的窗口
  • 普通模式下Ctrl-w q?即 :q 結束分割出來的視窗。如果在新視窗中有輸入需要使用強制符!即:q!
  • 普通模式下Ctrl-w o?打開一個視窗并且隱藏之前的所有視窗
  • 普通模式下Ctrl-w j?移至下面視窗
  • 普通模式下Ctrl-w k?移至上面視窗
  • 普通模式下Ctrl-w h?移至左邊視窗
  • 普通模式下Ctrl-w l?移至右邊視窗
  • 普通模式下Ctrl-w J?將當前視窗移至下面
  • 普通模式下Ctrl-w K?將當前視窗移至上面
  • 普通模式下Ctrl-w H?將當前視窗移至左邊
  • 普通模式下Ctrl-w L?將當前視窗移至右邊
  • 普通模式下Ctrl-w -?減小視窗的高度
  • 普通模式下Ctrl-w +?增加視窗的高度

14.文檔加密

    vim -x file1?

15.在vim命令行模式狀態下執行外部命令

?在命令行模式中輸入!可以執行外部的shell命令

?

    :!ls 用于顯示當前目錄的內容

    :!rm FILENAME用于刪除名為 FILENAME 的文件

    :w FILENAME可將當前 VIM 中正在編輯的文件另存為 FILENAME 文件

16.vim中的查看幫助

  • 普通模式下F1打開vim自己預設的幫助文檔
  • 命令行模式下輸入:h shiftwidth?打開名為shiftwidth的幫助文件

17.Vim的功能設定

1.vim的功能設定(目前不要動這個文件,不知道怎么改)

可以在編輯文件的時候進行功能設定,如命令行模式下輸入:set nu(顯示行數),設定值退出vim后不會保存。要永久保存配置需要修改vim配置文件。 vim的配置文件~/.vimrc,可以打開文件進行修改,不過務必小心不要影響vim正常使用

2.獲取目前的設定

  • 命令行模式下輸入:set或者:se顯示所有修改過的配置
  • 命令行模式下輸入:set all?顯示所有的設定值
  • 命令行模式下輸入:set option??顯示option的設定值
  • 命令行模式下輸入:set nooption?取消當期設定值

3.set功能的說明

  • 命令行模式下輸入:set autoindent(ai)?設置自動縮進
  • 命令行模式下輸入:set autowrite(aw)?設置自動存檔,默認未打開
  • 命令行模式下輸入:set background=darklight,設置背景風格
  • 命令行模式下輸入:set backup(bk)?設置自動備份,默認未打開
  • 命令行模式下輸入: set cindent(cin)?設置C語言風格縮進

18.補充?

set nu 顯示行號

:set ai 自動縮行

:set ts=4 設置一個 TAB 鍵等于幾個空格

移動光標

[[ 轉到上一個位于第一列的"{"

]] 轉到下一個位于第一列的"{"

{ 轉到上一個空行

} 轉到下一個空行

gd 轉到當前光標所指的局部變量的定義

二.gcc編譯器

?

1.gcc 支持編譯的一些源文件后綴名

后綴

源文件

.c

C語言源文件

.C .cc .cxx

C++源文件

.m

Object-C源文件

.i

經過預處理后的C源文件

.ii

經過預處理后的C++源文件

.s .S

匯編語言源文件

.h

預處理文件(頭文件)

.o

目標文件

.a

存檔文件

?gcc 編譯程序的流程

?

預處理:gcc –E hello.c –o hello.i;gcc –E調用cpp

編 譯:gcc –S hello.i –o hello.s;gcc –S調用ccl

匯 編:gcc –c hello.s –o hello.o;gcc -c 調用as

鏈 接:gcc hello.o –o hello ;gcc -o 調用ld

編譯過程比較難記,我們簡化一下,前三步,GCC的參數連起來是“ESc”,相應輸入的文件的后綴是“iso”,這樣記憶起來就容易多了

注意:

  1. Linux的可執行文件,只需向其分配x(可執行)權限即可?sudo chmod u+x excutefile
  2. 作為Linux程序員,我們可以讓gcc在編譯的任何階段結束,以便檢查或使用該階段的輸出(這個很重要)

?2.體驗:用gcc編譯一個經典的hello

先使用Gvim編輯C語言代碼,保存為hello.c

gcc 文件名 -o 名字(隨便取的代替前者的名字,因為前者是C語言源文件) ?編譯

./名字(剛剛隨便取的名字) ?執行

3.gcc的細分三步

$ gcc -E hello.c -o hello.i

首先gcc會調用預處理程序cpp,展開在源程序中定義的宏(上例:#include <stdio.h>)

hello.i這是一個經過預處理器處理之后的C源文件

gcc的-E參數可以讓gcc在預處理結束后停止編譯過程。

$ gcc -c hello.i -o hello.o

第二步,將hello.i編譯為目標代碼,gcc默認將.i文件看成是預處理后的C語言源代碼,因此它會直接跳過預處理,開始編譯過程。

o文件它已經是二進制文件了

Tips:

  1. 請記住,gcc預處理源文件的時候(第一步),不會進行語法錯誤的檢查
  2. 語法檢查會在第二步進行,比如花括號不匹配、行末尾沒有分號、關鍵字錯誤......

gcc hello.o -o hello

第三步,gcc連接器將目標文件鏈接為一個可執行文件,一個大致的編譯流程結束

?4.有函數調用的gcc

現在很多軟件都是采用的模塊化開發,通常一個程序都是有很多個源文件組成,相應的就形成了多個編譯單元。gcc能夠很好的處理這些編譯單元,最終形成一個可執行程序

?

三.調試器gdb

1.gdb的功能

  1. 啟動程序,可以按照用戶自定義的要求隨心所欲的運行程序。
  2. 可讓被調試的程序在用戶所指定的調試的斷點處停住 (斷點可以是條件表達式)。
  3. 當程序停住時,可以檢查此時程序中所發生的事。
  4. 動態地改變程序的執行環境。

啟動gdb的方法有以下幾種:

  1. gdb <program> program也就是執行文件,一般在當前目錄下。
  2. gdb <program> core 用gdb同時調試一個運行程序和core文件,core是程序非法執行后,core dump后產生的文件。
  3. gdb <program> <PID> 如果程序是一個服務程序,那么可以指定這個服務程序運行時的進程ID。gdb會自動attach上去,并調試它。program應該在PATH環境變量中搜索得到。 gdb啟動時,可以加上一些gdb的啟動開關,詳細的開關可以用gdb -help查看。下面只列舉一些比較常用的參數: -symbols <file> -s <file> 從指定文件中讀取符號表。 -se file 從指定文件中讀取符號表信息,并把它用在可執行文件中。 -core <file> -c <file> 調試時core dump的core文件。 -directory <directory> -d <directory> 加入一個源文件的搜索路徑。默認搜索路徑是環境變量中PATH所定義的路徑。

先使用gcc -g gdb.h -o testgdb生成可使用gdb調試的testgdb文件

gdb testgdb 開啟gdb調試器

(gdb) l      鍵入 l命令相當于list命令,從第一行開始列出源碼:

?(gdb) break 16 <-------------------- 設置斷點,在源程序第16行處。

?(gdb) break func <-------------------- 設置斷點,在函數func()入口處。

?(gdb) info break <-------------------- 查看斷點信息。

?(gdb) r <--------------------- 運行程序,run命令簡寫

?(gdb) n <--------------------- 單條語句執行,next命令簡寫。

?(gdb) c???? <--------------------- 繼續運行程序,continue命令簡寫。

?(gdb) p I??? <--------------------- 打印變量i的值,print命令簡寫。

?(gdb) bt???? <--------------------- 查看函數堆棧。

?(gdb) finish <--------------------- 退出函數。

?(gdb) q???? <--------------------- 退出gdb。

gdb programm(啟動GDB)

b 設斷點(要會設4種斷點:行斷點、函數斷點、條件斷點、臨時斷點)

run 開始運行程序

bt 打印函數調用堆棧

p 查看變量值

c 從當前斷點繼續運行到下一個斷點

n 單步運行

s 單步運行

quit 退出GDB

  • display 跟蹤變量值的改變
  • until 跳出循環
  • finish 跳出函數
  • help 幫助

四.文件管理器Makefile

1.Makefile的作用:

一個工程中的源文件不計其數,按其類型、功能、模塊分別放在若干個目錄中。makefile定義了一系列的規則來指定,哪些文件需要先編譯,哪些文件需要后編譯,哪些文件需要重新編譯,甚至進行更復雜的功能操作(因為makefile就像一個shell腳本一樣,可以執行操作系統的命令)。

makefile帶來的好處就是——“自動化編譯”,一但寫好,只需要一個make命令,整個工程完全編譯,極大的提高了軟件的開發效率。make是一個命令工具,是一個及時makefile中命令的工具程序。

make工具最主要也是最基本的功能就是根據makefile文件中描述的源程序至今的相互關系來完成自動編譯、維護多個源文件工程。而makefile文件需要按某種語法進行編寫,文件中需要說明如何編譯各個源文件并鏈接生成可執行文件,要求定義源文件之間的依賴關系。

2.Makefile的使用:

首先vim Makefile

Makefile的內容,一般寫法:

test(目標文件): prog.o code.o(依賴文件列表)
tab(至少一個tab的位置) gcc prog.o code.o -o test(命令)
.......

例:

test: prog.o code.o

(這里是按tab鍵) ? ? ? ?gcc prog.o code.o -o test

prog.o: prog.c code.h

??????? gcc -c prog.c -o prog.o

code.o: code.c code.h

??????? gcc -c code.c -o code.o

clean:

??????? rm -f *.o test

$ make

執行./test查看結果

?make clean就會去執行rm -f *.o test這條命令,完成 clean 操作。

3.帶宏的Makefile

Makefile還可以定義和使用宏(也稱做變量),從而使其更加自動化,更加靈活,在Makefile中定義宏的格式為:

?macroname = macrotext

使用宏的格式為:

?$(macroname)

?

?

?

?

問題:

1.在實驗時使用>>也并沒有看出來它可以格式化代碼,只看到向右移動了很多格。

轉載于:https://www.cnblogs.com/angelahxy/p/4839577.html

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

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

相關文章

關于指定日期的獲取

java使用Calendar類獲得指定日期 關于指定日期的獲取&#xff0c;是根據指定日期和當前日期相差的天數&#xff0c;然后使用set方法設置Calendar.DAY_OF_MONTH的值。Calendar cal Calendar.getInstance();cal.set(Calendar.DAY_OF_MONTH, cal.get(Calendar.DAY_OF_MONTH) - da…

nodejs的package.json依賴dependencies中 ^ 和 ~ 的區別

nodejs的package.json定義了一個模塊&#xff0c;包括其依賴關系的一個簡單的JSON文件&#xff0c;該文件可以包含多個不同的指令來告訴Node包管理器如何處理模塊。 dependencies則表示此模塊依賴的模塊和版本&#xff0c;其中常常可以看到類似 ^1.2.0 或 ~1.2.0 這樣的版本范圍…

腳本命令_SAP HANA數據庫備份命令腳本

需求場景&#xff1a;HANA數據庫版本 2.044 &#xff0c; SYSTEMDB庫1個&#xff0c;Tenant庫有3個 PRD、POP、HAP需要用命令行備份。備份原理說明&#xff1a;1、腳本同hana studio 一樣&#xff0c;用SYSTEM用戶去備份所有的數據庫。2、備份腳本工作在數據庫管理員用戶下&…

Spring 基于Java的Bean聲明

Spring 基于Java的Bean聲明 使用Configuration進行設置&#xff1b; Xml&#xff1a; <?xml version"1.0" encoding"UTF-8"?> <beans xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance" xmlns"http://www.springframework.…

手機音頻通道被占用_關于凱叔講故事APP的音頻導出下載

孩子喜歡聽凱叔講故事&#xff0c;起先是三國演義和博物學&#xff0c;在網上聽了個開頭后&#xff0c;毫不猶豫買了正版,心想著購買app可以下載音頻&#xff0c;完了拷貝到其他播放器聽。然而......然而......大失所望&#xff0c;美其名曰保護正版&#xff0c;可這么個玩意&a…

編譯安裝 apache 2.4.6

如果配置apr&#xff0c;需要預先安裝apr 以下是安裝apache 步驟: groupadd webuser useradd -g webuser webuser 下載apache2 下載鏈接&#xff1a;http://pan.baidu.com/s/1ntiGWvZ 配置 ./configure --prefix/server/apache2 \ --enable-mods-sharedmost \ --enable-so \ --…

CSS3中border-radius、box-shadow與gradient那點事兒

一、border-radius border-radius用于添加圓角邊框&#xff0c;用處非常廣泛。 1&#xff09;一個值&#xff0c;代表了四個角 .radius-one {/* Safari 3-4, iOS 1-3.2, Android 1.6- */-webkit-border-radius: 12px; /* Firefox 1-3.6 */-moz-border-radius: 12px; /* Opera 1…

編程 跳臺階_Java版劍指offer編程題第8題--跳臺階

跟learnjiawa一起每天一道算法編程題&#xff0c;既可以增強對常用API的熟悉能力&#xff0c;也能增強自己的編程能力和解決問題的能力。算法和數據結構&#xff0c;是基礎中的基礎&#xff0c;更是筆試的重中之重。不積硅步&#xff0c;無以至千里&#xff1b;不積小流&#x…

獲取漢字的首字母(轉)

轉換 獲取一個漢字的拼音首字母。 GB碼兩個字節分別減去160&#xff0c;轉換成10進制碼組合就可以得到區位碼例如漢字“你”的GB碼是0xC4/0xE3&#xff0c;分別減去0xA0&#xf…

$ionicPopup

轉自&#xff1a;http://www.ionicframework.com/docs/api/service/%24ionicPopup/ Usage A few basic examples, see below for details about all of the options available. angular.module(mySuperApp, [ionic]) .controller(PopupCtrl,function($scope, $ionicPopup, $tim…

目標規劃運籌學例題doc_運籌學之目標規劃(胡運權版).doc

運籌學之目標規劃(胡運權版).doc第七章 目標規劃1 目標規劃的提出線性規劃問題是討論一個給定的線性目標函數在一組線性約束條件下的最大值或最小值問題。對于一個實際問題&#xff0c;管理科學者根據管理層決策目標的要求&#xff0c;首先確定一個目標函數以衡量不同決策的優劣…

Deep Learning(深度學習) 學習筆記(四)

神經概率語言模型&#xff0c;內容分為三塊&#xff1a;問題&#xff0c;模型與準則&#xff0c;實驗結果。[此節內容未完待續...] 1&#xff0c;語言模型問題 語言模型問題就是給定一個語言詞典包括v個單詞&#xff0c;對一個字串做出二元推斷&#xff0c;推斷其是否符合該語言…

Java Virtual Machine

后續完善轉載于:https://www.cnblogs.com/fight-tao/p/4849167.html

selenium 鼠標懸浮_處理Selenium3+python3定位鼠標懸停才顯示的元素

先給大家介紹下Selenium3python3--如何定位鼠標懸停才顯示的元素定位鼠標懸停才顯示的元素&#xff0c;要引入新模塊# coding:utf-8from selenium import webdriverfrom selenium.webdriver.common.action_chains import ActionChainsdriver webdriver.Firefox()driver.get(&q…

JavaScript 運行機制

JavaScript 運行機制 閱讀目錄 一、為什么JavaScript是單線程&#xff1f;二、任務隊列三、事件和回調函數四、Event Loop五、定時器六、Node.js的Event Loop七、關于setTimeout的測試一、為什么JavaScript是單線程&#xff1f; JavaScript語言是單線程&#xff0c;也就是說&am…

mysql 時間 本周 本月_mysql查詢當天、本周、上周、本月、上月信息

今天select * from 表名 where to_days(時間字段名) to_days(now());昨天SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) – TO_DAYS( 時間字段名) < 17天SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) < date(時間字段名)近30天SELECT * FROM 表名 wher…

android自定義倒計時控件示例

這篇文章主要介紹了Android秒殺倒計時自定義TextView示例&#xff0c;大家參考使用吧 自定義TextView控件TimeTextView代碼&#xff1a; 復制代碼 代碼如下:import android.content.Context;import android.content.res.TypedArray;import android.graphics.Paint;import andro…

Spring Cloud構建微服務架構:服務消費(Ribbon)【Dalston版】

通過上一篇《Spring Cloud構建微服務架構&#xff1a;服務消費&#xff08;基礎&#xff09;》&#xff0c;我們已經學會如何通過LoadBalancerClient接口來獲取某個服務的具體實例&#xff0c;并根據實例信息來發起服務接口消費請求。但是這樣的做法需要我們手工的去編寫服務選…

檢測是否點擊到精靈

需要給每個精靈設置tag.可以用枚舉 bool GE::GamePass::ccTouchBegan( cocos2d::CCTouch *pTouch, cocos2d::CCEvent *pEvent ) { const int iButtonCount 2; const int iButtonTags[iButtonCount] { GamePass_btn_share, GamePass_btn_return }; for(int i 0; i < iButt…

從gitlab上拉代碼_從gitlab上拉取代碼并一鍵部署

一、gitlab安裝GitLab是一個利用Ruby on Rails開發的開源應用程序&#xff0c;實現一個自托管的Git項目倉庫&#xff0c;可通過Web界面進行訪問公開的或者私人項目。GitLab擁有與Github類似的功能&#xff0c;能夠瀏覽源代碼&#xff0c;管理缺陷和注釋。可以管理團隊對倉庫的訪…