CONST的简单介绍 C语言中const有什么用途

CONST\u7684\u8be6\u7ec6\u4ecb\u7ecd

\uff08\u4e8c\uff09\u8be6\u7ec6\u4ecb\u7ecd\uff0c\u6ce8\u91cd\u7ec6\u8282C\u4e2d\u5e38\u7528:\u201c #define \u53d8\u91cf\u540d \u53d8\u91cf\u503c\u201d\u5b9a\u4e49\u4e00\u4e2a\u503c\u66ff\u4ee3,\u7136\u800c\u5374\u6709\u4e2a\u81f4\u547d\u7f3a\u70b9:\u7f3a\u4e4f\u7c7b\u578b\u68c0\u6d4b\u673a\u5236,\u8fd9\u6837\u9884\u5904\u7406\u5728C++\u4e2d\u6210\u4e3a\u53ef\u80fd\u5f15\u53d1\u9519\u8bef\u7684\u9690\u60a3,\u4e8e\u662f\u5f15\u5165const.const\u4f7f\u7528:1. \u7528\u4e8e\u6307\u9488\u7684\u4e24\u79cd\u60c5\u51b5:const\u662f\u4e00\u4e2a\u5de6\u7ed3\u5408\u7684\u7c7b\u578b\u4fee\u9970\u7b26.int const *A; //A\u53ef\u53d8,*A\u4e0d\u53ef\u53d8int *const A; //A\u4e0d\u53ef\u53d8,*A\u53ef\u53d82.\u9650\u5b9a\u51fd\u6570\u7684\u4f20\u9012\u503c\u53c2\u6570:void function(const int Var); //\u4f20\u9012\u8fc7\u6765\u7684\u53c2\u6570\u5728\u51fd\u6570\u5185\u4e0d\u53ef\u4ee5\u6539\u53d8.3.\u9650\u5b9a\u51fd\u6570\u8fd4\u56de\u503c\u578b.const int function(); //\u6b64\u65f6const\u65e0\u610f\u4e49const myclassname function(); //\u51fd\u6570\u8fd4\u56de\u81ea\u5b9a\u4e49\u7c7b\u578bmyclassname.4\u9650\u5b9a\u51fd\u6570\u7c7b\u578b.void function()const; //\u5e38\u6210\u5458\u51fd\u6570, \u5e38\u6210\u5458\u51fd\u6570\u662f\u4e0d\u80fd\u6539\u53d8\u6210\u5458\u53d8\u91cf\u503c\u7684\u51fd\u6570\u3002\u4f8b\u5982\uff1aint Point::GetY(){return yVal;}\u8fd9\u4e2a\u51fd\u6570\u88ab\u8c03\u7528\u65f6\uff0c\u4e0d\u6539\u53d8Point\u5bf9\u8c61\uff0c\u800c\u4e0b\u9762\u7684\u51fd\u6570\u6539\u53d8Point\u5bf9\u8c61\uff1avoid Point:: SetPt (int x, int y){xVal=x;yVal=y;}\u4e3a\u4e86\u4f7f\u6210\u5458\u51fd\u6570\u7684\u610f\u4e49\u66f4\u52a0\u6e05\u695a\uff0c\u6211\u4eec\u53ef\u5728\u4e0d\u6539\u53d8\u5bf9\u8c61\u7684\u6210\u5458\u51fd\u6570\u7684\u51fd\u6570\u539f\u578b\u4e2d\u52a0\u4e0aconst\u8bf4\u660e\uff1aclass Point{public:int GetX() const;int GetY() const;void SetPt (int, int);void OffsetPt (int, int);private:int xVal, yVal;};const\u6210\u5458\u51fd\u6570\u5e94\u8be5\u5728\u51fd\u6570\u539f\u578b\u8bf4\u660e\u548c\u51fd\u6570\u5b9a\u4e49\u4e2d\u90fd\u589e\u52a0const\u9650\u5b9a\uff1aint Point::GetY() const{return yVal;}class Set {public:Set (void){ card = 0; }bool Member(const int) const;void AddElem(const int);//...};bool Set::Member (const int elem) const{//...}\u975e\u5e38\u91cf\u6210\u5458\u51fd\u6570\u4e0d\u80fd\u88ab\u5e38\u91cf\u6210\u5458\u5bf9\u8c61\u8c03\u7528\uff0c\u56e0\u4e3a\u5b83\u53ef\u80fd\u4f01\u56fe\u4fee\u6539\u5e38\u91cf\u7684\u6570\u636e\u6210\u5458\uff1aconst Set s;s.AddElem(10); // \u975e\u6cd5: AddElem\u4e0d\u662f\u5e38\u91cf\u6210\u5458\u51fd\u6570s.Member(10); // \u6b63\u786e*******\u4f46\u6784\u9020\u51fd\u6570\u548c\u6790\u6784\u51fd\u6570\u5bf9\u8fd9\u4e2a\u89c4\u5219\u4f8b\u5916\uff0c\u5b83\u4eec\u4ece\u4e0d\u5b9a\u4e49\u4e3a\u5e38\u91cf\u6210\u5458\uff0c\u4f46\u53ef\u88ab\u5e38\u91cf\u5bf9\u8c61\u8c03\u7528\uff08\u88ab\u81ea\u52a8\u8c03\u7528\uff09\u3002\u5b83\u4eec\u4e5f\u80fd\u7ed9\u5e38\u91cf\u7684\u6570\u636e\u6210\u5458\u8d4b\u503c\uff0c\u9664\u975e\u6570\u636e\u6210\u5458\u672c\u8eab\u662f\u5e38\u91cf\u3002\u4e3a\u4ec0\u4e48\u9700\u8981const\u6210\u5458\u51fd\u6570\uff1f\u6211\u4eec\u5b9a\u4e49\u7684\u7c7b\u7684\u6210\u5458\u51fd\u6570\u4e2d\uff0c\u5e38\u5e38\u6709\u4e00\u4e9b\u6210\u5458\u51fd\u6570\u4e0d\u6539\u53d8\u7c7b\u7684\u6570\u636e\u6210\u5458\uff0c\u4e5f\u5c31\u662f\u8bf4\uff0c\u8fd9\u4e9b\u51fd\u6570\u662f\u53ea\u8bfb\u51fd\u6570\uff0c\u800c\u6709\u4e00\u4e9b\u51fd\u6570\u8981\u4fee\u6539\u7c7b\u6570\u636e\u6210\u5458\u7684\u503c\u3002\u5982\u679c\u628a\u4e0d\u6539\u53d8\u6570\u636e\u6210\u5458\u7684\u51fd\u6570\u90fd\u52a0\u4e0aconst\u5173\u952e\u5b57\u8fdb\u884c\u6807\u8bc6\uff0c\u663e\u7136\uff0c\u53ef\u63d0\u9ad8\u7a0b\u5e8f\u7684\u53ef\u8bfb\u6027\u3002\u5176\u5b9e\uff0c\u5b83\u8fd8\u80fd\u63d0\u9ad8\u7a0b\u5e8f\u7684\u53ef\u9760\u6027\uff0c\u5df2\u5b9a\u4e49\u6210const\u7684\u6210\u5458\u51fd\u6570\uff0c\u4e00\u65e6\u4f01\u56fe\u4fee\u6539\u6570\u636e\u6210\u5458\u7684\u503c\uff0c\u5219\u7f16\u8bd1\u5668\u6309\u9519\u8bef\u5904\u7406\u3002const\u6210\u5458\u51fd\u6570\u548cconst\u5bf9\u8c61\u5b9e\u9645\u4e0a\uff0cconst\u6210\u5458\u51fd\u6570\u8fd8\u6709\u53e6\u5916\u4e00\u9879\u4f5c\u7528\uff0c\u5373\u5e38\u91cf\u5bf9\u8c61\u76f8\u5173\u3002\u5bf9\u4e8e\u5185\u7f6e\u7684\u6570\u636e\u7c7b\u578b\uff0c\u6211\u4eec\u53ef\u4ee5\u5b9a\u4e49\u5b83\u4eec\u7684\u5e38\u91cf\uff0c\u7528\u6237\u81ea\u5b9a\u4e49\u7684\u7c7b\u4e5f\u4e00\u6837\uff0c\u53ef\u4ee5\u5b9a\u4e49\u5b83\u4eec\u7684\u5e38\u91cf\u5bf9\u8c61\u3002\u4f8b\u5982\uff0c\u5b9a\u4e49\u4e00\u4e2a\u6574\u578b\u5e38\u91cf\u7684\u65b9\u6cd5\u4e3a\uff1aconst int i=1 \uff1b\u540c\u6837\uff0c\u4e5f\u53ef\u4ee5\u5b9a\u4e49\u5e38\u91cf\u5bf9\u8c61\uff0c\u5047\u5b9a\u6709\u4e00\u4e2a\u7c7bclassA\uff0c\u5b9a\u4e49\u8be5\u7c7b\u7684\u5e38\u91cf\u5bf9\u8c61\u7684\u65b9\u6cd5\u4e3a\uff1aconst classA a(2)\uff1b\u8fd9\u91cc\uff0ca\u662f\u7c7bclassA\u7684\u4e00\u4e2aconst\u5bf9\u8c61\uff0c2\u4f20\u7ed9\u5b83\u7684\u6784\u9020\u51fd\u6570\u53c2\u6570\u3002const\u5bf9\u8c61\u7684\u6570\u636e\u6210\u5458\u5728\u5bf9\u8c61\u5bff\u547d\u671f\u5185\u4e0d\u80fd\u6539\u53d8\u3002\u4f46\u662f\uff0c\u5982\u4f55\u4fdd\u8bc1\u8be5\u7c7b\u7684\u6570\u636e\u6210\u5458\u4e0d\u88ab\u6539\u53d8\u5462\uff1f\u4e3a\u4e86\u786e\u4fddconst\u5bf9\u8c61\u7684\u6570\u636e\u6210\u5458\u4e0d\u4f1a\u88ab\u6539\u53d8\uff0c\u5728C++\u4e2d\uff0cconst\u5bf9\u8c61\u53ea\u80fd\u8c03\u7528const\u6210\u5458\u51fd\u6570\u3002\u5982\u679c\u4e00\u4e2a\u6210\u5458\u51fd\u6570\u5b9e\u9645\u4e0a\u6ca1\u6709\u5bf9\u6570\u636e\u6210\u5458\u4f5c\u4efb\u4f55\u5f62\u5f0f\u7684\u4fee\u6539\uff0c\u4f46\u662f\u5b83\u6ca1\u6709\u88abconst\u5173\u952e\u5b57\u9650\u5b9a\u7684\uff0c\u4e5f\u4e0d\u80fd\u88ab\u5e38\u91cf\u5bf9\u8c61\u8c03\u7528\u3002\u4e0b\u9762\u901a\u8fc7\u4e00\u4e2a\u4f8b\u5b50\u6765\u8bf4\u660e\u8fd9\u4e2a\u95ee\u9898\uff1a classC{intX;public:intGetX(){returnX;}voidSetX(intX){this->X=X;}};voidmain(){const classC constC;cout<<constC.GetX();}\u5982\u679c\u6211\u4eec\u7f16\u8bd1\u4e0a\u9762\u7684\u7a0b\u5e8f\u4ee3\u7801\uff0c\u7f16\u8bd1\u5668\u4f1a\u51fa\u73b0\u9519\u8bef\u63d0\u793a\uff1aconstC\u662f\u4e2a\u5e38\u91cf\u5bf9\u8c61\uff0c\u5b83\u53ea\u80fd\u8c03\u7528const\u6210\u5458\u51fd\u6570\u3002\u867d\u7136GetX( )\u51fd\u6570\u5b9e\u9645\u4e0a\u5e76\u6ca1\u6709\u6539\u53d8\u6570\u636e\u6210\u5458X\uff0c\u7531\u4e8e\u6ca1\u6709const\u5173\u952e\u5b57\u9650\u5b9a\uff0c\u6240\u4ee5\u4ecd\u65e7\u4e0d\u80fd\u88abconstC\u5bf9\u8c61\u8c03\u7528\u3002\u5982\u679c\u6211\u4eec\u5c06\u4e0a\u8ff0\u4ee3\u7801\u4e2d\uff1aint GetX()\u6539\u5199\u6210\uff1aint GetX() const\u518d\u91cd\u65b0\u7f16\u8bd1\uff0c\u5c31\u6ca1\u6709\u95ee\u9898\u4e86\u3002const\u6210\u5458\u51fd\u6570\u7684\u4f7f\u7528const\u6210\u5458\u51fd\u6570\u8868\u793a\u8be5\u6210\u5458\u51fd\u6570\u53ea\u80fd\u8bfb\u7c7b\u6570\u636e\u6210\u5458\uff0c\u800c\u4e0d\u80fd\u4fee\u6539\u7c7b\u6210\u5458\u6570\u636e\u3002\u5b9a\u4e49const\u6210\u5458\u51fd\u6570\u65f6\uff0c\u628aconst\u5173\u952e\u5b57\u653e\u5728\u51fd\u6570\u7684\u53c2\u6570\u8868\u548c\u51fd\u6570\u4f53\u4e4b\u95f4\u3002\u6709\u4eba\u53ef\u80fd\u4f1a\u95ee\uff1a\u4e3a\u4ec0\u4e48\u4e0d\u5c06const\u653e\u5728\u51fd\u6570\u58f0\u660e\u524d\u5462\uff1f\u56e0\u4e3a\u8fd9\u6837\u505a\u610f\u5473\u7740\u51fd\u6570\u7684\u8fd4\u56de\u503c\u662f\u5e38\u91cf\uff0c\u610f\u4e49\u5b8c\u5168\u4e0d\u540c\u3002\u4e0b\u9762\u662f\u5b9a\u4e49const\u6210\u5458\u51fd\u6570\u7684\u4e00\u4e2a\u5b9e\u4f8b\uff1a classX{inti;public:intf()const;};\u5173\u952e\u5b57const\u5fc5\u987b\u7528\u540c\u6837\u7684\u65b9\u5f0f\u91cd\u590d\u51fa\u73b0\u5728\u51fd\u6570\u5b9e\u73b0\u91cc\uff0c\u5426\u5219\u7f16\u8bd1\u5668\u4f1a\u628a\u5b83\u770b\u6210\u4e00\u4e2a\u4e0d\u540c\u7684\u51fd\u6570\uff1aint X::f() const{return i;}\u5982\u679cf( )\u8bd5\u56fe\u7528\u4efb\u4f55\u65b9\u5f0f\u6539\u53d8i\u6216\u8c03\u7528\u53e6\u4e00\u4e2a\u975econst\u6210\u5458\u51fd\u6570\uff0c\u7f16\u8bd1\u5668\u5c06\u7ed9\u51fa\u9519\u8bef\u4fe1\u606f\u3002\u4efb\u4f55\u4e0d\u4fee\u6539\u6210\u5458\u6570\u636e\u7684\u51fd\u6570\u90fd\u5e94\u8be5\u58f0\u660e\u4e3aconst\u51fd\u6570\uff0c\u8fd9\u6837\u6709\u52a9\u4e8e\u63d0\u9ad8\u7a0b\u5e8f\u7684\u53ef\u8bfb\u6027\u548c\u53ef\u9760\u6027\u3002

CONST\uff1a\u4e00\u4e2aC\u8bed\u8a00\u7684\u5173\u952e\u5b57

(一)简单介绍,把握全局
1.》》const与define。两者都可以用来定义常量,但是const定义时,定义了常量的类型,所以更精确一些。#define只是简单的文本替换,除了可以定义常量外,还可以用来定义一些简单的函数,有点类似内联函数(Inline)。const和define定义的常量可以放在头文件里面。(小注:可以多次声明,但只能定义一次)
2.》》const与指针和引用。
(a)const与指针。
先来看看下面的几种定义: int me;const int* p1 = &me;//p1可变,*p1不可变,此时不能用*p1来修改,但是p1可以转向int* const p2 = &me;//p2不可变,*p2可变,此时允许*p2来修改其值,但是p2不能转向。const int* const p3 = &me;//p3不可变,*p3也不可变,此时既不能用*p3来修改其值,也不能转向(b)指针和引用的区别很简单,就是引用更简洁,更安全。因为引用声明时必须初始化。 引用更接近const指针,一旦与某个变量关联,就将一直效忠于他。
(c)const指针可以接受const和非const地址,但是非const指针只能接受非const地址。所以const指针的能力更强一些,所以尽量多用const指针,这是一种习惯。
3.》》(a)const与函数。由于2(c),所以经常把函数的形参类型设为const,而且多为const 引用。但是这里有一个限制,不能把不是左值的地址传递给引用。(左值包括变量,数组元素,结构成员,引用,被解除引用的指针等)。 形参是const类型的,说明该函数将不会修改其值,该函数便为const函数。
(b)const与类成员函数。先看看下面这段代码: const Stock land = Stock(hyd);land.show();land 是常量,但是类成员函数show无法保证不修改land,所以编译器将拒绝执行该段代码。除非你能保证show像const函数一样,但这需要另外一种语法,即:
void show() const; //声明
void Stock::show() const{} //定义



  • 鐢–璇█璇彞缂栧啓鐨勭▼搴忚绉颁负C璇█鐨勨斺
    绛旓細auto double int struct break else long switch case enum register typedef char extern return union const float short unsigned continue for signed void default goto sizeof volatile do if while static 鏍规嵁鍏抽敭瀛楃殑浣滅敤,鍙垎鍏朵负鏁版嵁绫诲瀷鍏抽敭瀛椼佹帶鍒惰鍙ュ叧閿瓧銆佸瓨鍌ㄧ被鍨嬪叧閿瓧鍜屽叾瀹冨叧閿瓧鍥涚被銆1 鏁版嵁...
  • 绗﹀彿甯搁噺鐨勫畾涔
    绛旓細瀹氫箟绗﹀彿甯搁噺鐨勪竴鑸牸寮:CONST=璇存槑锛氬父閲忚鏄庨儴鍒嗕互鍏抽敭瀛const寮澶, 鍚庨潰鐨勬爣璇嗙涓哄父閲忔爣璇嗙锛屽叾涓=鍙峰悗鐨勫父閲忎负鏁存暟銆佸疄鏁般佸瓧绗︺ 瀛楃涓诧紙瀛楃銆佸瓧绗︿覆甯搁噺鍦ㄥ悗闈㈢珷鑺備腑灏嗕綔浠嬬粛锛夈傝屼笖锛屽湪甯搁噺璇存槑閮ㄥ垎鍙互灏嗗嚑涓父閲忚鏄庢垚绗﹀彿甯搁噺锛屽叡鐢ㄤ竴涓叧閿瓧const銆備緥濡: 鍒欏湪鏈▼搴忎腑pi鍜寊ero浣滀负绗﹀彿甯...
  • 濡備綍鐞嗚Вconst char*,char const*,char*const绛
    绛旓細铏界劧杩欎簺瀹氫箟鐪嬩笂寰堢被浼硷紝浣嗘槸浠庢煇浜涚粏鑺傛柟闈㈠彲浠ヨ繘琛屽噯纭殑鍖哄垎銆傚湪杩欓噷浠嬬粛涓涓瘮杈冩柟渚跨殑璁板繂鏂规硶锛歝onst璺濈鍙橀噺鍚嶇殑璺濈浠h〃const鐨淇グ鑼冨洿銆俢onst char* a; 鍏朵腑const鏄窛绂籥杈冭繙鐨勶紝*绂籥姣旇緝杩戯紝姝ゆ椂鍙互璁板繂涓*a鏄痗onst鐨勩備笉鑳戒慨鏀*a,a[0],a->褰㈠紡鐨勫彉鏇淬備絾鏄痑鏈韩鍙互鎸囧悜鍏朵粬瀛楃涓层俢h...
  • const_cast鐨勪粙缁
    绛旓細const_cast锛岀敤浜庝慨鏀圭被鍨鐨刢onst鎴杤olatile灞炴с
  • int绫诲瀷鐨刢onst鎸囬拡鍜宑onst int绫诲瀷鐨勬寚閽堝緱涓嶅悓涔嬪 涓句緥浠嬬粛鍚
    绛旓細a: const int *a=&b; 鎸囧悜甯告暟鐨勬寚閽堬紝鍗虫寚閽堟湰韬殑鍊兼槸鍙互鏀瑰彉鐨勶紝浣嗘寚鍚戠殑鍐呭鏄笉鑳芥敼鍙樼殑;b: int const *a=&b; 涓巆鍔熻兘鐩稿悓;c: int * const a = &b; 甯告寚閽堬紝鍗虫寚閽堟湰韬殑鍊兼槸涓嶅彲鏀瑰彉鐨勶紝浣嗘寚鍚戠殑鍐呭鏄彲鏀瑰彉鐨;d: const int * const a = &b;鎸囧悜甯告暟鐨勫父鎸囬拡,鍗虫寚閽...
  • 鑰冪爺澶嶈瘯鑻辫鑷垜浠嬬粛
    绛旓細鍙渶瑕浠嬬粛涓涓嬭嚜宸鐨勭畝鍗鎯呭喌灏卞彲浠ヤ簡,娌″繀瑕佸噯澶囩殑鏃堕棿杩囬暱,涓鑸5鍒嗛挓灏卞彲浠ヤ簡銆傚璇曠殑鑰佸笀涓嶅お浼氭敞鎰忎綘鐨勮嫳鏂囦粙缁嶇殑,浠栦滑璺熸敞閲嶄笓涓氶潰璇曘傚埌鏃跺欏埆绱у紶,鎶婅嚜宸卞噯澶囩殑閮借〃杈惧嚭鏉ュ氨鍙互浜 10 宸茶禐杩 宸茶俯杩< 浣犲杩欎釜鍥炵瓟鐨勮瘎浠锋槸? 璇勮 鍒嗕韩 澶嶅埗閾炬帴https://zhidao.baidu.com/question/93712815/answer/307...
  • C璇█鐨勫悎娉曞父閲忕殑瀹氫箟鏄浠涔?鎬!鎬!
    绛旓細鏁村瀷甯搁噺灏辨槸鏁村父鏁帮紝10杩涘埗鏁般8杩涘埗鏁板拰16杩涘埗鏁颁笁绉嶃傚锛10銆012銆0x0A 瀹炲瀷甯搁噺涔熺О涓烘诞鐐瑰瀷甯搁噺銆傚锛3.14 銆 1.2E-4 瀛楃鍨嬪父閲忓繀椤荤敤鍗曞紩鍙锋嫭璧锋潵銆傚锛'M' , '\n'瀛楃涓插父閲忓簲鐢ㄥ弻寮曞彿鎷捣鏉ャ傚锛"abc" , "a"绗﹀彿甯搁噺鍙互鐢ㄥ畯瀹氫箟琛ㄧず涔熷彲浠ョ敤const鍏抽敭瀛楄〃寰併傚锛#...
  • ...绫诲瀷闄愬畾绗︺佺被鍨嬩慨楗扮鐨勫尯鍒槸浠涔?甯屾湜鍒嗗埆浠嬬粛涓涓
    绛旓細鎬庝箞璇村憿鈥︹︿綘鍙互鐢ㄦ潵瀹氫箟鍙橀噺鐨勫熀鏈兘鏄鏄庣锛岃濡俰nt銆乧har銆乨ouble銆倂olatile銆const绛夋槸闄愬畾绗︼紝浣犺兘涓嶈兘瀵瑰畠鍋氱偣鍟ワ紝瀹冨暐鏃跺欐湁鍟ユ椂鍊欐病锛屾斁鍦ㄩ偅閲岋紝璺熻繖涓湁鍏炽備慨楗扮鏄慨楗拌鏄庣鐨勶紝unsigned銆乻hort绛夌瓑锛岃繖涓や釜鍙互鐢ㄦ潵淇グint銆備笉杩噓nsigned鍜宻hort涔熷彲浠ュ畾涔夊彉閲忊︹﹀彧鏄竴绉嶇畝鍖栫殑鍐欐硶 ...
  • const*p鍜*const p鐨勫尯鍒
    绛旓細鍞竴鐨勫尯鍒湪浜庯細p鍙彉锛*p涓嶅彲鍙樸備笅闈㈢▼搴忚鏄*p涓嶅彲鍙橈細int main(){ int a;const int* p = &a;//缂栬瘧鍣ㄥ皢a鐪嬪仛const int鍨嬶紝鎵浠ヨ鍙ヤ笉浼氬嚭閿 //*p = 1;//l-value specifies const object,铏界劧澹版槑鐨刟 娌℃湁const鏍囪锛屼絾鐢变簬p鐨勬晥鏋滐紝*p涓嶈兘鏀瑰彉 return 0;} 涓嬮潰绋嬪簭璇存槑p鍙彉锛歩nt...
  • C绋嬪簭鍛樻庝箞瀛︿範
    绛旓細鍏const 1銆佷綘鏄惁缁忓父浣跨敤const 鏉ヨ〃鏄庝笉鑳藉琚洿鏀圭殑鍙橀噺锛2銆佷綘鏄惁缁忓父浣跨敤const 甯搁噺鏉ヤ唬鏇垮畯锛3銆佷笅闈㈠洓绉嶆儏鍐碉紝浣犵煡閬撴槸鍚勮〃绀轰粈涔堟剰鎬濆悧锛焛nt i_value= 10;const int* pvalue = & i_value int const *pvalue = & i_value int* const pvalue=& i_value const int* const pvalue ...
  • 扩展阅读:c语言const用法 ... const语句 ... const在c++中的用法 ... cost的三种用法 ... c的const详解 ... const有哪些用法 ... consist的用法 ... const使用方法 ... consist的短语 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网