[筆記] C++學習筆記(雜記)

給我自己看的...
While我真的很不常用....while(條件),條件為0或者不成立,則跳出迴圈,否則會執行回圈內的區域。
while(v2){  // V2 != 0 , while 為true則做迴圈區域
        int temp = v2 ;
        v2 = v1 % v2;
        v1 = temp;
}      
箭頭運算子(Arrow, ->)
(*p).foo;  // 提領p取得一個物件,然後擷取其中名為foo的成員
p->foo;    // 等同上面作法

輸出入運算子(IO, >> <<),我會忘記左右邊...
>>  // 從istream讀取輸入值
<<  // 將輸出值寫到 ostream
左值與右值...
左值(L-Value)可以放在賦值操作的左右兩側,變數永遠是左值
右值(R-Value)只可以放在賦值操作的右側,字面常數是右值,所以不能賦予東西。

if(變數)....當變數為ture或不為零的時候則執行
if(!變數)...當變數為false或0的時候則執行

int i = 0;
if(i){                    //假如 i = true = 1
   cout << "i!=0" <<endl; //i=0=false 所以不執行這個
}else{
   cout << "i=0" <<endl;  //顯示這個
}
if(!i){                   //假如 i = false = 0
   cout << "i=0" <<endl;  
}else{
   cout << "i!=0" <<endl;  
}
local.global.static這三個東西的特性...
輸出結果:
[foo1] local: 1, static: 1, global: 1
[foo2] local: 1, static: 1, global: 2
[foo1] local: 1, static: 2, global: 3
[foo2] local: 1, static: 2, global: 4
using namespace std;

int globalVar;

void foo1()
{
    int localVar = 0;
    static int staticVar = 0;

    localVar++;
    staticVar++;
    globalVar++;

    printf("[foo1] local: %d, static: %d, global: %d\n",
        localVar, staticVar, globalVar);
}

void foo2()
{
    int localVar = 0;
    static int staticVar = 0;

    localVar++;
    staticVar++;
    globalVar++;

    printf("[foo2] local: %d, static: %d, global: %d\n",
        localVar, staticVar, globalVar);

}

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

    foo1();
    foo2();

    foo1();
    foo2();
    system("PAUSE");
    return EXIT_SUCCESS;
}

提醒

本站內容即日起將轉到另一站上轉跳~