zoukankan      html  css  js  c++  java
  • 对逗号操作符的理解.

    逗号操作符是一组由逗号分隔的表达式,这些表达死从左向右计算.逗号表达式的结果是其最后边表达式的值。如果最后边的操作数是左值,则逗号表达式的值也是左值。此类表达式通常用于for循环:

    int cnt=iec.size();

    for(vector<int>::size_type ix=0;ix!=ivec.size();++ix,--cnt)

    ivec[ix]=cnt;

    上述的for语句在循环表达式中使ix自增1而cnt自减1。每次循环均要修改ix和cnt的值。当检验ix的条件判断成立时,程序将下一个元素重新设置为cnt的当前值.

    以上摘自书146面..

    我的理解

    int a(){

    return 1,2,3;

    }

    那么其他地方调用这个方法返回值是最右边的那个3.

    又如:

    // container.cpp : 定义控制台应用程序的入口点。 //

    #include "stdafx.h"

    #include<iostream>

    #include<string>

    #include<stdexcept>

    #include<vector>

    using namespace std;

    int& a(int &b){ return 1,2,b; }

    int _tmain(int argc, _TCHAR* argv[])

    {  int as =3;

     a(as)=10;//这里返回了逗号最后边的引用b,所以可以赋值,相当于给as赋值为10

     cout<<"as:"<<as<<endl;  

    cout<<a(as)<<endl;//同样,这里就是返回的as的值

     return 0; }

    控制台输出:

    as:10

    10

    按任意键退出.

  • 相关阅读:
    C语言指针入门
    c的动态内存管理
    汇编入门基础与helloworld
    汇编1
    汇编2——完整的例子集合
    算法与数据结构——选择,插入,希尔排序
    MySQL
    MySQL 笔记
    CSS样式优先级
    GIT使用笔记
  • 原文地址:https://www.cnblogs.com/crazycodehzp/p/3344674.html
Copyright © 2011-2022 走看看