变量.注意内部链接全局变量(也声明使用静态关键字)

来源:互联网 发布:网络语言酱紫什么意思 编辑:程序博客网 时间:2024/05/29 05:54
   
在上一节中提到的,一个集成开发环境(IDE)包含了所有你需要开发、编译、链接和调试你的程序的东西。所以让我们安装一个。
显而易见的问题是:“哪一个?“。记住,你可以安装多个IDE,所以没有“错误的决定”。这些教程中,我们将告诉你一些你的IDE的不错的功能,比如如何做集成调试。我们所有的例子都将使用微软的Visual C++(Windows),和代码::块(Linux或Windows)。因此,我们强烈建议您选择其中之一。

然而,如果你想尝试不同的IDE,你可以这样做。我们给你的概念将任何IDE,然而,不同的IDE的使用不同的keymappings和不同的设置,你可以做一点搜索找到相当于我们给你。

1234567891011121314// note: exp must be non-negativeint pow(int base, int exp){    int result = 1;    while (exp)    {        if (exp & 1)            result *= base;        exp >>= 1;        base *= base;    }     return result;}

你知道从日常数学的括号内的表达式得到评估第一。例如,在表达式(2 + 3)* 4,(+ 3)部分进行评估第一。
对于这个练习,你得到了一组没有括号的表达式。使用运算符的优先级和结合性上面表中的规则,添加括号每个表达清楚编译器如何将计算表达式。
提示:使用样式表中的列以上判断经营者是否是一元(有一个操作数)或二进制(有两个操作数)。综述部分1.5,首先看运营商如果你需要对一元和二元运算符是一个进修。
123456789101112131415#include <iostream> void incrementAndPrint(){    int value = 1; // automatic duration by default    ++value;    std::cout << value << std::endl;} // value is destroyed here int main(){    incrementAndPrint();    incrementAndPrint();    incrementAndPrint();}

第一次调用这个函数时,它返回0。第二次,它返回1。每次调用时,返回一个高于前一次调用的。您可以为您的对象分配这些数字作为唯一的id。因为s_itemid是局部变量,它可不是“篡改”的其他功能。
静态变量提供全局变量的一些好处(它们在程序结束前不会被破坏),同时限制它们的可见性以阻止范围。这使得它们比全局变量更安全。
12345int generateID(){    static int s_itemID = 0;    return s_itemID++; // makes copy of s_itemID, increments the real s_itemID, then returns the value in the copy}


0 0
原创粉丝点击