日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > 【C/C++學院】(4)c++開篇/類和對象/命名空間/類型增強/三目運算符/const專題/引用專題/函數增強

【C/C++學院】(4)c++開篇/類和對象/命名空間/類型增強/三目運算符/const專題/引用專題/函數增強

來源:程序員人生   發布時間:2015-02-06 08:31:23 閱讀次數:2936次

1.類和對象

成員函數,成員變量,抽象封裝的能力。

求圓的面積;

#include <iostream> using namespace std; class circle{ private: double m_r;//成員變量 public: void setR(double r)//成員函數 { m_r = r; } double getR() { return m_r; } double getS() { return 3.14*m_r*m_r; } }; void main() { circle c1; c1.setR(4); cout << "r:" << c1.getR() << "s:" << c1.getS() << endl; c1.setR(5); cout << "r:" << c1.getR() << "s:" << c1.getS() << endl; system("pause"); }

2.命令空間

命名空間;c++對c的擴大。解決標識符沖突。
std::out  :: 域作用符。
#include <iostream> namespace NameSpaceA{ int a = 0; } namespace NameSpaceB{ int a = 1; namespace NameSpaceC{ struct Teacher{ char name[10]; int age; }; } } void main() { using namespace NameSpaceA; printf("NameSpaceA:a=%d ", a); printf("NameSpaceB:a=%d ", NameSpaceB::a); using NameSpaceB::NameSpaceC::Teacher; Teacher t1 = { "aaa", 3 }; printf("t1.name = %s ", t1.name); printf("t1.age = %d ", t1.age); system("pause"); }



3.語法增強

3.1register關鍵字增強 

int main()
{
    register int a = 0;
    printf("&a = %x ", &a);
    system("pause");
    return 0;
} 

//register關鍵字 要求編譯器讓變量a直接放在寄存器里面,速度快

//c語言中 register修飾的變量 不能取地址,但是在c++里面做了內容

register關鍵字的變化

register關鍵字要求“編譯器”將局部變量存儲于寄存器中

C語言中沒法獲得register變量地址

C++中仍然支持register關鍵字

C++編譯器有自己的優化方式,不使用register也可能做優化

C++中可以獲得register變量的地址 

3.2struct類型增強

struct類型的加強:

C語言的struct定義了1組變量的集合,C編譯器其實不認為這是1種新的類型

C++中的struct是1個新類型的定義聲明

struct Student

{

    char name[100];

    int age;

};

 

int main(int argc, char *argv[])

{

    Student s1 = {"wang", 1};//struct Student s1={};

    Student s2 = {"wang2", 2};    

    return 0;

}


4.3目運算符

#include <iostream> using namespace std; //在c++里面的3目運算符 返回是1個變量 //讓表達式做左值 //1 左值 能被放在 = 做值 稱為左值 //2 當左值的條件, 這段內存空間可以被你寫 int main() { int a = 10; int b = 20; int c = 31; //返回1個最小數 并且給最小數賦值成30 //3目運算符是1個表達式 ,表達式不可能做左值 //讓表達式做左值 (a < b ? a : b) = 30;//相當于c中的*((a < b ? &a : &b)) = 30; //在c中編譯不過,報錯 printf("a = %d, b = %d ", a, b); system("pause"); return 0; }


5.const專題


const 定義的變量, 在c++的編譯器中, 做了1個符號表, key <--->value | a<-->10;
修改的時候, 只是修改了重新分配的空間, 對原來的const數據沒有造成修改。
而在c中,卻可以將const常量進行修改。

6.援用專題

    援用在c++內部是1個常量指針。
type &name <---> type * const name;
援用的本質是c++編譯器幫我們做了1個取地址的操作。
#include <iostream> using namespace std; void swap(int &a, int &b) { int c = 0; c = a; a = b; b = c; } void swap2(int *a, int *b) { int c = 0; c = *a; *a = *b; *b = c; } //援用和左值進行綁定的時候 void main() { int a1 = 10; int b1 = 20; swap(a1, b1); printf("a1:%d, b1:%d", a1, b1); system("pause"); }

7.函數增強

7.1內聯函數

內聯函數的函數體需要和實現寫在1起,不能單獨聲明。
代替帶參數的宏,避免宏的副作用。
#include "iostream" using namespace std; #define MYFUNC(a, b) ((a) < (b) ? (a) : (b)) //inline要求關鍵字, 內聯編譯 //內聯函數的函數體,需要和實現寫在1塊 inline int myfunc(int a, int b) { return a < b ? a : b; } int main() { int a = 1; int b = 3; //int c = myfunc(++a, b); int c = MYFUNC(++a, b);//===> ((++a) < (b) ? (++a) : (b)); printf("a = %d ", a); //3 printf("b = %d ", b);//3 printf("c = %d ", c); //3 system("pause"); return 0; }

7.2函數重載

函數重載與函數指針的結合;可以添加斷電,選擇逐語句履行,視察運行效果。
#include "iostream" using namespace std; int func(int x) // int(int a) { return x; } int func(int a, int b) { return a + b; } int func(const char* s) { return strlen(s); } //定義了1個 指針 類型 (指向函數的指針類型) typedef int(*PFUNC)(int a); // int(int a) void main() { PFUNC p = func; int c = p(1); printf("c = %d ", c); system("pause"); }




生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 日韩欧美在 | 国产毛片久久久久久国产毛片 | 久久骚| 成人免费一区二区三区视频网站 | 日韩一区综合 | 亚洲最大福利网站 | 成人97| 亚洲自拍小视频 | 国产一级片在线播放 | 亚洲天堂av网 | 国产二区久久 | 成人av在线电影 | 男女在线观看 | 在线观看精品一区 | 国产传媒一区二区三区 | 激情中文字幕 | 激情五月婷婷综合网 | 免费不卡视频 | 国产精品1区2区3区 国内自拍中文字幕 | 欧美精选一区二区 | 成人欧美一区二区三区在线观看 | 9999精品视频 | 成人影院免费观看 | 亚洲品质自拍视频网站 | 在线日韩电影 | 久久九九视频 | 成人高清av | 91精品久久久久久久久99绯色 | 欧美日韩一区精品 | 欧美黄色网 | 国产成人免费网站 | 国产99久久精品 | 九九综合九九综合 | 亚洲成人一二三 | 国产一区二区欧美 | 欧美成人精品一区二区 | 少妇精品亚洲一区二区成人 | 九九热精品在线 | 综合在线国产 | 亚洲精品在线观看视频 | 色综合第一页 |