課程
/后端開發(fā)
/C++
/C++遠征之離港篇
指針指向const修飾的變量時,應該是const int const *p = &a;,這是練習題中的,視頻里沒有講到const int const *p = &a,這個什么意思?
2018-11-12
源自:C++遠征之離港篇 3-3
正在回答
當const已經修飾一直變量時,再去用指針去指這個變量會很危險,因為指針可以改去該變量的值,與const就有沖突的風險,const int *p=&a和const int * const p=&a是可以的,這樣保證了*p的值不能改變,所以就不會有與const沖突的可能性。
const int const *p = &a這種寫法可以運行,但是等價于const int *p = &a,也等價于int const *p = &a。從可讀性角度,可刪減一個const。三種const的作用都是把*p當作常量。
不能把,只能有一個const。習題中不是你這樣的,你再看看
qq_慕瓜7215810 提問者
舉報
C++掃清通往面向對象的最后一道障礙,將所有知識點融會貫通
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2019-03-17
當const已經修飾一直變量時,再去用指針去指這個變量會很危險,因為指針可以改去該變量的值,與const就有沖突的風險,const int *p=&a和const int * const p=&a是可以的,這樣保證了*p的值不能改變,所以就不會有與const沖突的可能性。
2019-03-15
const int const *p = &a這種寫法可以運行,但是等價于const int *p = &a,也等價于int const *p = &a。從可讀性角度,可刪減一個const。三種const的作用都是把*p當作常量。
2018-11-12
不能把,只能有一個const。習題中不是你這樣的,你再看看