Yunyin's blog
  • Home
  • Archive
  • Tags
  • Categories
  • 3-7-18 测试string中at和[]抛出异常机制

    2023-11-27 /
    • { C++ }
    • { 读书笔记 }
    • { Thinking in C++第二卷读书笔记 }
    • { tasks }

    3.7-18 测试string中at和[]抛出异常机制

    经测试:

    Read On »
  • 3-7-2 测试回文

    2023-11-27 /
    • { C++ }
    • { 读书笔记 }
    • { Thinking in C++第二卷读书笔记 }
    • { tasks }

    3.7-2 测试回文

    #include <string>
    <!--more-->
    #include <iostream>
    using namespace std;

    void reverse(string &s)
    {
    int size = s.size();
    for (size_t i = 0; i < size / 2; i++)
    {
    char temp = s[i];
    s[i] = s[size - 1 - i];
    s[size - 1 - i] = temp;
    }
    }

    int main(int argc, char const *argv[])
    {
    if (argc < 2)
    {
    cout << "argc less than 2!" << endl;
    return -1;
    }

    string s(argv[1]);
    string s2(argv[1]);
    reverse(s);
    cout << (s == s2) << endl;
    return 0;
    }

  • 3-7-3 无视大小写的回文

    2023-11-27 /
    • { C++ }
    • { 读书笔记 }
    • { Thinking in C++第二卷读书笔记 }
    • { tasks }

    3.7-3 无视大小写的回文

    #include <string>
    <!--more-->
    #include <cctype>
    #include <iostream>
    using namespace std;

    void reverse(string &s)
    {
    int size = s.size();
    for (size_t i = 0; i < size / 2; i++)
    {
    char temp = tolower(s[i]);
    s[i] = tolower(s[size - 1 - i]);
    s[size - 1 - i] = temp;
    }
    }

    int main(int argc, char const *argv[])
    {
    if (argc < 2)
    {
    cout << "argc less than 2!" << endl;
    return -1;
    }

    string s(argv[1]);
    string s2(argv[1]);
    for (auto &i : s2)
    i = tolower(i);

    reverse(s);
    cout << (s == s2) << endl;
    return 0;
    }
  • 3-7-6 读取文件并替换指定字符串

    2023-11-27 /
    • { C++ }
    • { 读书笔记 }
    • { Thinking in C++第二卷读书笔记 }
    • { tasks }

    3.7-6 读取文件并替换指定字符串

    源代码

    Read On »
  • 3-7-7 无视大小写替换字符串

    2023-11-27 /
    • { C++ }
    • { 读书笔记 }
    • { Thinking in C++第二卷读书笔记 }
    • { tasks }

    3.7-7 无视大小写替换字符串

    #include <fstream>
    <!--more-->
    #include <iostream>
    #include <string>
    #include "ichar_traits.h"
    using namespace std;

    istring getData(string filename) throw(std::ifstream::failure)
    {
    std::ifstream streamReader(filename, std::ios::binary);
    if (!streamReader.is_open())
    throw std::ifstream::failure("file couldn't open");
    streamReader.seekg(0, std::ios::end); // 游标移到文件结尾
    unsigned filesize = streamReader.tellg(); // 获取游标当前位置 - 文件开始位置,此处为文件大小
    char *_data = new char[filesize]; // 分配内存
    streamReader.seekg(0, std::ios::beg); // 跳转回开始
    streamReader.read(_data, filesize); // 读取文件
    streamReader.close();
    istring data(_data);
    delete[] _data;
    return std::move(data);
    }

    istring &replaceAll(istring &context,
    const istring &from,
    const istring &to)
    {
    size_t lookHere = 0;
    size_t foundHere;
    while ((foundHere = context.find(from, lookHere)) != istring::npos) // find from lookHere
    { // to avoid the string
    context.replace(foundHere, from.size(), to); //"to" is the substr
    lookHere = foundHere + to.size(); // of "from"
    #ifdef SHOWREPLACE
    cout << "stringNumber:" << foundHere << endl;
    #endif
    }
    return context;
    }

    int main(int argc, char const *argv[])
    {
    istring fileTxt = getData("Rparse.h");
    cout<<fileTxt<<endl;
    replaceAll(fileTxt,"Size","Hello");
    cout<<fileTxt<<endl;
    return 0;
    }
  • 1精灵的创建

    2023-11-21 /
    • { 游戏引擎 }
    • { cocos2d-x(axmol) }

    精灵的创建

    可以使用一张图像来创建精灵,PNG, JPEG, TIFF, WebP, 这几个格式都可以。当然也有一些其它的方式可以创建精灵,如使用 图集 创建,通过 精灵缓存 创建,我们会一个一个的讨论。本节介绍通过图像创建精灵。

    Read On »
  • 02 C++原子操作的内存顺序

    2023-11-21 /
    • { C++ }
    • { C++多线程 }
    • { C++ lock-free编程 }

    C++atomic中原子操作的内存顺序

    ​ 这里有六个内存序列选项可应用于对原子类型的操作(来源于枚举类std::memory_order):

    Read On »
  • 3-2新增数据类型

    2023-11-21 /
    • { 游戏引擎 }
    • { cocos2d-x(axmol) }
    • { cocos2d-x游戏入门开发精解 }

    3.2新增数据类型

    cocos2d-x定义了自己的数据类型,都是以类的形式存在。

    Read On »
  • axmol安装

    2023-11-21 /
    • { 游戏引擎 }
    • { cocos2d-x(axmol) }
    • { 安装与项目搭建 }

    axmol安装

    【Axmol】基于Cocos2d-x 4.0的持续维护的游戏引擎介绍 - 知乎 (zhihu.com)

    Read On »
  • cocos2dx(4-0)安装

    2023-11-21 /
    • { 游戏引擎 }
    • { cocos2d-x(axmol) }
    • { 安装与项目搭建 }

    cocos2dx安装

    1. 下载cocos2d-x压缩文件(选择4.0版本)

    Read On »
« prev1…4041424344…91next »
© 2024 - Yunyin
Powered by Hexo , Theme - Icalm