青春是永不回头的...吧 关注:113贴子:29,228


1楼2017-01-19 14:49回复
    3楼2017-01-19 14:58
    回复
      Linux epoll详解
      http://blog.csdn.net/xiajun07061225/article/details/9250579
      我读过的最好的epoll讲解
      https://my.oschina.net/dclink/blog/287198
      C/C++内存管理详解 堆 栈
      http://www.cnblogs.com/Azhu/p/4436531.html
      minidump详细介绍
      http://www.cnblogs.com/lidabo/p/3635960.html


      4楼2017-01-19 15:01
      回复
        虚拟地址、线性地址和物理地址的转换
        http://blog.chinaunix.net/uid-23208702-id-163527.html
        单链表的初始化,建立,插入,查找,删除。
        http://blog.sina.com.cn/s/blog_8f66e1840100y0gl.html
        malloc函数详解
        http://blog.csdn.net/xw13106209/article/details/4962479
        信号量与PV操作
        http://blog.chinaunix.net/uid-15014334-id-2853109.html


        6楼2017-01-20 08:15
        回复
          比较带参宏与函数的异同
          http://blog.csdn.net/piaojun_pj/article/details/5932639
          64 位系统和 32 位系统
          https://www.zhihu.com/question/19862280
          制图网页
          https://www.processon.com/
          struct常见使用方法
          http://blog.csdn.net/huqinwei987/article/details/23625823


          7楼2017-01-20 08:20
          回复
            8楼2017-01-20 08:24
            回复
              9楼2017-01-20 08:25
              回复
                10楼2017-01-20 11:43
                回复
                  cocos2dx小游戏
                  #include "HelloWorldScene.h"
                  #include "SimpleAudioEngine.h"
                  //#include "saolei.h"
                  //#include "cocos-ext.h"
                  //using namespace cocos2d::extension;
                  USING_NS_CC;
                  Scene* HelloWorld::createScene()
                  {
                  ///创建一个场景对象
                  auto scene = Scene::create();
                  ///创建HelloWorld对象
                  auto layer = HelloWorld::create();
                  ///添加HelloWorld到场景中
                  scene->addChild(layer);
                  return scene;
                  }
                  ///初始化
                  bool HelloWorld::init()
                  {
                  if ( !Layer::init() )
                  {
                  return false;
                  }
                  auto visibleSize = Director::getInstance()->getVisibleSize();
                  Vec2 origin = Director::getInstance()->getVisibleOrigin();
                  /////////////////////////////
                  ///添加一个X菜单作为点击退出程序
                  ///你可以修改它
                  ///添加一个“关闭”图标退出,这是一个生成对象
                  auto closeItem = MenuItemImage::create(
                  "CloseNormal.png",
                  "CloseSelected.png",
                  CC_CALLBACK_1(HelloWorld::menuCloseCallback, this));
                  closeItem->setPosition(Vec2(origin.x + visibleSize.width - closeItem->getContentSize().width/2 ,
                  origin.y + closeItem->getContentSize().height/2));
                  // ///创建菜单,这是一个生成对象
                  // auto menu = Menu::create(closeItem, NULL);
                  // menu->setPosition(Vec2::ZERO);
                  // this->addChild(menu, 1);
                  ///添加一个菜单作为标记
                  auto tab = MenuItemImage::create(
                  "i_flag.png",
                  "i_flag.png",
                  CC_CALLBACK_1(HelloWorld::tabCallback, this));
                  ///菜单坐标
                  tab->setPosition(Vec2(origin.x + visibleSize.width - tab->getContentSize().width*15+66,
                  origin.y + tab->getContentSize().height*15+20));
                  ///创建菜单,这是一个生成对象
                  auto menu = Menu::create(closeItem,tab, NULL);
                  menu->setPosition(Vec2::ZERO);
                  this->addChild(menu, 1);
                  ///创建按钮
                  for(int i=0; i<MAX_X; i++)
                  {
                  for(int j=0; j<MAX_Y; j++)
                  {
                  Face[i][j]=MenuItemImage::create(
                  "wall.png",
                  "wall.png",
                  CC_CALLBACK_1(HelloWorld::Remove, this,i,j));
                  ///设置位置
                  Face[i][j]->setPosition(Point(420+32*i,70+32*j));
                  ///
                  SecondFace[i][j]=Menu::create(Face[i][j],NULL);
                  SecondFace[i][j]->setPosition(Vec2::ZERO);
                  this->addChild(SecondFace[i][j], 2);
                  }
                  }
                  ///添加雷
                  ///用一张图片创建一个精灵对象


                  14楼2017-02-07 14:48
                  回复
                    //Sprite*sprite=Sprite:: create("boom.jpg");
                    int array1[mine];
                    int array2[mine];
                    int k,i2,j2;
                    srand(time(NULL));
                    array1[0]= rand()%10+1;
                    array2[0]= rand()%10+1;
                    for(i = 0; i < mine; i ++)
                    {
                    array1[i]= rand()%10+1;
                    for (i2=0; i2<i; i2++)
                    {
                    if(array1[i2]==array1[i])
                    i--;
                    }
                    }
                    for(j = 0; j< mine; j ++)
                    {
                    array2[j]= rand()%10+1;
                    for (j2=0; j2<j; j2++)
                    {
                    if(array2[j2]==array2[j])
                    j--;
                    }
                    }
                    for(k=0; k<mine; k++)
                    {
                    a[array1[k]][array2[k]]=9;
                    Mine[array1[k]][array2[k]]=Sprite:: create("i12.png");
                    ///设置精灵的坐标
                    Mine[array1[k]][array2[k]]->setPosition (Point(420+32*array1[k],70+32*array2[k]));
                    ///将精灵添加到层
                    this->addChild(Mine[array1[k]][array2[k]],1);
                    }
                    ///添加雷的个数
                    for (i=1; i<MAX_X-1; i++)
                    {
                    for(j=1; j<MAX_Y-1; j++)
                    {
                    if(a[i][j]!=9)
                    {
                    a[i][j]=a[i-1][j-1]/9+a[i-1][j]/9+a[i-1][j+1]/9+a[i][j-1]/9+a[i][j+1]/9+a[i+1][j-1]/9+a[i+1][j]/9+a[i+1][j+1]/9;
                    if (a[i][j]==1)
                    {
                    Number[i][j]=Sprite:: create("i01.png");
                    ///设置精灵的坐标
                    Number[i][j]->setPosition (Point(420+32*i,70+32*j));
                    ///将精灵添加到层
                    this->addChild(Number[i][j],1);
                    }
                    if (a[i][j]==2)
                    {
                    Number[i][j]=Sprite:: create("i02.png");
                    ///设置精灵的坐标
                    Number[i][j]->setPosition (Point(420+32*i,70+32*j));
                    ///将精灵添加到层
                    this->addChild(Number[i][j],1);
                    }
                    if (a[i][j]==3)
                    {
                    Number[i][j]=Sprite:: create("i03.png");
                    ///设置精灵的坐标
                    Number[i][j]->setPosition (Point(420+32*i,70+32*j));
                    ///将精灵添加到层
                    this->addChild(Number[i][j],1);
                    }
                    if (a[i][j]==4)
                    {
                    Number[i][j]=Sprite:: create("i04.png");
                    ///设置精灵的坐标
                    Number[i][j]->setPosition (Point(420+32*i,70+32*j));
                    ///将精灵添加到层
                    this->addChild(Number[i][j],1);
                    }
                    if (a[i][j]==5)
                    {
                    Number[i][j]=Sprite:: create("i05.png");
                    ///设置精灵的坐标
                    Number[i][j]->setPosition (Point(420+32*i,70+32*j));
                    ///将精灵添加到层
                    this->addChild(Number[i][j],1);
                    }
                    if (a[i][j]==6)
                    {
                    Number[i][j]=Sprite:: create("i06.png");
                    ///设置精灵的坐标
                    Number[i][j]->setPosition (Point(420+32*i,70+32*j));
                    ///将精灵添加到层
                    this->addChild(Number[i][j],1);
                    }
                    if (a[i][j]==7)
                    {
                    Number[i][j]=Sprite:: create("i07.png");
                    ///设置精灵的坐标
                    Number[i][j]->setPosition (Point(420+32*i,70+32*j));
                    ///将精灵添加到层
                    this->addChild(Number[i][j],1);
                    }
                    if (a[i][j]==8)
                    {
                    Number[i][j]=Sprite:: create("i08.png");
                    ///设置精灵的坐标
                    Number[i][j]->setPosition (Point(420+32*i,70+32*j));
                    ///将精灵添加到层
                    this->addChild(Number[i][j],1);
                    }
                    if (a[i][j]==0)
                    {
                    Number[i][j]=Sprite:: create("i00.png");
                    ///设置精灵的坐标
                    Number[i][j]->setPosition (Point(420+32*i,70+32*j));
                    ///将精灵添加到层
                    this->addChild(Number[i][j],1);
                    }
                    }
                    }
                    }


                    15楼2017-02-07 14:49
                    回复
                      ///添加一个标签显示Hello
                      ///创建并初始化一个标签
                      auto label = Label::createWithTTF("SWEEP ", "fonts/Marker Felt.ttf", 54);
                      ///标签的位置设置
                      label->setPosition(Vec2(origin.x + visibleSize.width/2,
                      origin.y + visibleSize.height- label->getContentSize().height));
                      ///添加label到画面层
                      this->addChild(label, 1);
                      ///创建一个带图片的精灵
                      auto sprite = Sprite::create("saolei.jpg");
                      ///让图片适应屏幕大小
                      Size size=Director::getInstance()->getWinSize();
                      ///设置图片精灵的显示位置
                      sprite->setPosition(Vec2(visibleSize.width/2 + origin.x, visibleSize.height/2 + origin.y));
                      float winw=size.width;
                      float winh=size.height;
                      float spx=sprite->getTextureRect().getMaxX();
                      float spy=sprite->getTextureRect().getMaxY();
                      sprite->setScaleX(winw/spx);
                      sprite->setScaleY(winw/spy);
                      ///添加图片精灵到画面层
                      this->addChild(sprite, 0);
                      return true;
                      }
                      void HelloWorld::menuCloseCallback(Ref* pSender)
                      {
                      ///切换场景
                      Director::getInstance()->end();
                      #if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS)
                      exit(0);
                      #endif
                      }
                      void HelloWorld::spread(Ref* pSender,int x,int y)
                      {
                      int m1,n1;
                      ///没有越界的时候
                      if((x>0 && x<MAX_X-1) && (y>0 && y<MAX_Y-1))
                      {
                      for(m1=-1; m1<2; m1++)
                      {
                      for(n1=-1; n1<2; n1++)
                      {
                      if( anniu[x+m1][y+n1]==0)///按钮没有翻开
                      {
                      if(m1==0 && n1==0)
                      {
                      continue;
                      }
                      else
                      {
                      if(a[x+m1][y+n1]==0)
                      {
                      removeChild( Face[x+m1][y+n1],true);
                      removeChild( SecondFace[x+m1][y+n1],true);
                      anniu[x+m1][y+n1]=1;
                      a[x+m1][y+n1]==10;
                      HelloWorld::spread(pSender,x+m1,y+n1 );
                      }
                      else
                      {
                      removeChild( Face[x+m1][y+n1],true);
                      removeChild( SecondFace[x+m1][y+n1],true);
                      anniu[x+m1][y+n1]=1;
                      }
                      }
                      }
                      }
                      }
                      }
                      }
                      void HelloWorld::tabCallback(Ref* pSender)
                      {
                      ///标记
                      volun=1;
                      }


                      16楼2017-02-07 14:50
                      回复
                        void HelloWorld::Remove(Ref* pSender,int x,int y)
                        {
                        int NumMine=10,MarkMine=10;
                        int m,n;
                        if(volun==1)///标记
                        {
                        Number[x][y]=Sprite:: create("i_flag.png");
                        Number[x][y]->setPosition (Point(420+32*x,70+32*y));
                        this->addChild(Number[x][y],2);
                        volun=0;
                        if(a[x][y]==9)
                        {
                        NumMine--;
                        }
                        if(a[x][y]!=9)
                        {
                        MarkMine--;
                        }
                        if(NumMine==0 && MarkMine==0 && a[x][y]==9)
                        {
                        auto sprite = Sprite::create("win.jpg");
                        sprite->setPosition(Point(400,250));
                        this->addChild(sprite, 4);
                        }
                        //}
                        //else if(volun==1)///取消标记
                        //{
                        //removeChild( CancellMark[x][y],true);
                        //removeChild( SecondCancellMark[x][y],true);
                        //anniu[x][y]=1;
                        //volun=1;
                        //MarkMine++;
                        //}
                        }
                        else///翻开
                        {
                        removeChild( Face[x][y],true);
                        removeChild( SecondFace[x][y],true);
                        anniu[x][y]=1;
                        if(a[x][y]==9)///GAME OVER
                        {
                        for(int i=0; i<MAX_X; i++)
                        {
                        for(int j=0; j<MAX_Y; j++)
                        {
                        if(a[i][j]==9)
                        {
                        Number[i][j]=Sprite::create("i13.png");
                        Number[i][j]->setPosition(Point(420+32*x,70+32*y));
                        this->addChild(Number[i][j], 4);
                        removeChild( Face[i][j],true);
                        removeChild( SecondFace[i][j],true);
                        anniu[x][y]=1;
                        }
                        else
                        {
                        removeChild( Face[i][j],true);
                        removeChild( SecondFace[i][j],true);
                        anniu[x][y]=1;
                        }
                        }
                        }
                        }
                        if(a[x][y]==0)
                        {
                        a[x][y]=10;
                        HelloWorld::spread(pSender,x,y );
                        }
                        }
                        }


                        17楼2017-02-07 14:50
                        回复
                          epoll




                          18楼2017-02-28 16:24
                          回复
                            cilent




                            19楼2017-02-28 16:28
                            回复
                              UDP广播
                              recv


                              send



                              20楼2017-02-28 16:32
                              回复