最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Visual Studio C++指針靠前靠后的問題全面解析

 更新時(shí)間:2021年04月08日 11:38:42   作者:Oberon  
這篇文章主要介紹了Visual Studio C++指針靠前靠后的問題全面解析,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

本文地址:https://www.cnblogs.com/oberon-zjt0806/p/14631149.html

甜咸之爭

經(jīng)常寫C++的基本上避不開使用指針,而且C++中指針類型的寫法大體上有兩種:

int* a = nullptr; //*靠前
int *b = nullptr; //*靠后

都是聲明一個(gè)指針。

關(guān)于哪種寫法的傾向性,每個(gè)人都不太一樣,有的往前放,有的往后放,還有的👴愛放哪放哪,你管得著嘛。

《C++ Primer》中推薦靠后,原因是:

int *a,b,c; // a是指針,b和c都不是
int* a,b,c; // 一樣,但容易引起誤會,讓人誤以為b和c是指針,實(shí)則不然

不過用Visual Studio寫C++的時(shí)候,格式化方式又有所不同,當(dāng)你敲完int*a=nullptr;后會靠前,會變成int* a=nullptr;,其原因可能是隔壁的C#只允許往前放的寫法:

/C#代碼
unsafe ...
{
	int* a,b,c; 	// a,b,c都是指針
	int *a,*b,*c; 	// 錯誤!不讓這么寫。
}

我倒是不關(guān)心C#怎么寫,但是在C++的語境下,我贊同《C++ Primer》的觀點(diǎn),喜歡往后放,但是VS就像個(gè)傲嬌一樣,分號一敲完就把我剛寫好的int *a變成了int* a。

難道甜和咸就不共戴天了么??

當(dāng)然不是,對于C++代碼,VS默認(rèn)狀態(tài)下使用的是Clang-Format方案。
Clang-Format將這個(gè)問題稱為指針對齊,使用PointerAlignment設(shè)置,其實(shí)聽說Clang默認(rèn)是Right的。不過在Clang-Format配置文件中VS默認(rèn)將PointerAlignment置為Left。

當(dāng)然,我們倒沒必要把VS的Clang-Format配置文件拎出來暴打一頓塞回去,VS其實(shí)允許我們手動設(shè)置這個(gè)風(fēng)格,步驟如下:

1.菜單欄→工具→選項(xiàng),打開選項(xiàng)窗口

2.左側(cè)搜索“格式”然后找到箭頭所指的項(xiàng)(或者在左側(cè)直接按樹找文本編輯器→C/C++

3.依次往下找,代碼樣式→格式設(shè)置→間距,然后在右側(cè)找運(yùn)算符的間距→指針/引用對齊方式下面有四個(gè)選項(xiàng),你就可以設(shè)置成你prefer的方式,然后在下面看預(yù)覽效果觀察*&的位置,確定就好了

這樣,VS就不會執(zhí)拗地把*往前放了。

類似地,關(guān)于其他運(yùn)算符的設(shè)置方法也可以在這個(gè)上下文中進(jìn)行,因此這個(gè)位置值得記錄一下,畢竟恰當(dāng)設(shè)置可以提升開發(fā)效率,這個(gè)設(shè)置的位置又比較隱蔽容易迷路,所以特此記錄一下。

到此這篇關(guān)于Visual Studio C++指針靠前靠后的全面解析的文章就介紹到這了,更多相關(guān)Visual Studio C++指針內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 深入理解C++函數(shù)棧幀

    深入理解C++函數(shù)棧幀

    本文主要介紹了C++函數(shù)棧幀,詳細(xì)的介紹了C++函數(shù)棧幀的概念以及使用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • C++實(shí)現(xiàn)基數(shù)排序的方法詳解

    C++實(shí)現(xiàn)基數(shù)排序的方法詳解

    本篇文章是對使用C++實(shí)現(xiàn)基數(shù)排序的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • C語言中程序如何調(diào)用Python腳本

    C語言中程序如何調(diào)用Python腳本

    由于python有很多功能強(qiáng)大的開源庫,有時(shí)候在寫C語言程序的時(shí)候又想利用一下python強(qiáng)大的模塊,那么C語言中程序如何調(diào)用Python腳本,感興趣的小伙伴們可以參考一下
    2021-05-05
  • C語言二維數(shù)組應(yīng)用實(shí)現(xiàn)掃雷游戲

    C語言二維數(shù)組應(yīng)用實(shí)現(xiàn)掃雷游戲

    這篇文章主要為大家詳細(xì)介紹了C語言二維數(shù)組應(yīng)用實(shí)現(xiàn)掃雷游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • opencv提取水平與垂直線條

    opencv提取水平與垂直線條

    這篇文章主要為大家詳細(xì)介紹了opencv提取水平與垂直線條,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • OpenCV和C++實(shí)現(xiàn)圖像的翻轉(zhuǎn)(鏡像)、平移、旋轉(zhuǎn)、仿射與透視變換

    OpenCV和C++實(shí)現(xiàn)圖像的翻轉(zhuǎn)(鏡像)、平移、旋轉(zhuǎn)、仿射與透視變換

    這篇文章主要給大家介紹了關(guān)于OpenCV和C++實(shí)現(xiàn)圖像的翻轉(zhuǎn)(鏡像)、平移、旋轉(zhuǎn)、仿射與透視變換的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2021-09-09
  • C語言實(shí)現(xiàn)簡易連連看游戲

    C語言實(shí)現(xiàn)簡易連連看游戲

    這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)簡易連連看游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • Visual Studio安裝的圖文教程

    Visual Studio安裝的圖文教程

    這篇文章主要介紹了Visual Studio安裝的圖文教程,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Qt教程之QSqlQueryModel的使用詳解

    Qt教程之QSqlQueryModel的使用詳解

    QSqlQueryModel是QSqlTableModel的父類,它封裝了執(zhí)行SELECT語句從數(shù)據(jù)庫查詢數(shù)據(jù)的功能,本文將為大家介紹一下QSqlQueryModel的使用,需要的可以參考一下
    2022-11-11
  • C++ Qt QColorDialog使用方法

    C++ Qt QColorDialog使用方法

    本文主要介紹了C++ Qt QColorDialog使用方法,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01

最新評論

常熟市| 江北区| 宿州市| 连云港市| 儋州市| 于都县| 耒阳市| 静安区| 团风县| 潼关县| 夏河县| 扬州市| 苏尼特左旗| 故城县| 迭部县| 兴仁县| 蓬溪县| 新蔡县| 郸城县| 江源县| 永登县| 江津市| 图们市| 区。| 衡南县| 榆树市| 桐梓县| 宁城县| 白水县| 定襄县| 治县。| 和田县| 贞丰县| 右玉县| 靖安县| 噶尔县| 鸡泽县| 乐昌市| 北碚区| 北安市| 巩义市|