跳转至内容
  • 版块
  • 最新
  • 标签
  • 热门
  • Online Tools
  • 用户
  • 群组
折叠
品牌标识

D2Learn Forums

SPeakS

SPeak

@SPeak
d2learn-dev
关于
帖子
145
主题
21
群组
1
粉丝
5
关注
0

帖子

最新 最佳 有争议的

  • 创建MOGA官网, 并发布第一个活动MSCP
    SPeakS SPeak
    • 官网: https://moga.d2learn.org
    • MSCP活动: http://forum.d2learn.org/post/617

    4e3b1b1e-2a42-4ce8-9af2-12719b38df24-image.png

    MSCP | mcpp项目学习与贡献者培养计划

    MSCP是一款基于mcpp-standard开源项目开发的"地球Online"风格的角色扮演游戏。在游戏中你将扮演一个"编程初学者", 为了入门"现代C++"并揭露其背后的真相, 踏上了一条充满挑战和惊奇的现代C++学习之路...

    • 价格: 免费
    • 开发者: Sunrisepeak
    • 发行商: MOGA
    • 发行时间: 预计2025年10月
    • 游戏体量: 100H - 200H之间
    • 标签: 类魂系列、模拟人生、🌍Online、程序员、C++、开源、费曼学习法

  • 活动 | MSCP | mcpp项目学习与贡献者培养计划
    SPeakS SPeak

    MSCP是一款基于mcpp-standard开源项目开发的"地球Online"风格的角色扮演游戏。在游戏中你将扮演一个"编程初学者", 为了入门"现代C++"并揭露其背后的真相, 踏上了一条充满挑战和惊奇的现代C++学习之路...

    • 价格: 免费
    • 开发者: Sunrisepeak
    • 发行商: MOGA
    • 发行时间: 预计2025年10月
    • 游戏体量: 100H - 200H之间
    • 标签: 类魂系列、模拟人生、🌍Online、程序员、C++、开源、费曼学习法

    mcpp-standard开源项目简介

    一个 强调动手实践 的 现代C++ 入门教程项目。以现代C++的核心语言特性为基础, 开发了一套 [Book + Video + Code + X] 结构的"现代"教程。其中:

    • Book: 对应的是提供在线电子书和文档解析
    • Video: 提供核心语言特性的讲解视频
    • Code: 提供对应的代码练习及自动化检测工具(包括在线代码练习环境)
    • X: 提供项目的社区论坛和交流讨论群组

    项目的电子书、练习代码及相关工具开源在Github上, 视频发布在Bilibili和Youtube上

    • 项目开源地址: https://github.com/Sunrisepeak/mcpp-standard
    • 项目视频列表: bilibili / youtube

    Star History Chart

    项目之前也被业内媒体 HelloGithub 收录和分享过(112期)

    一、活动内容

    活动以mcpp-standard项目现有的核心语言特性的学习和交互式的代码练习的完成为 主线剧情 , 并在过程中 玩家先扮演C++学习者, 学习相关的核心特性, 然后再扮演技术分享者 把学到的C++特性用自己的语言和逻辑在分享给其他人, 双重视角 + 费曼学习法来快速入门现代C++

    同时活动也设置了 支线剧情 的玩法, 玩家在完成新手村任务(T0)后, 即可选择申请加入 活动小组, 然后就可以以团队协作的方式, 参与活动/社区/项目的开发和维护中, 感受一个开源项目和社区是如何运行的...

    目标

    • 基础目标
      • 初步的入门/了解现代C++
      • 使用mcpp-standard和cppreference持续学习的能力
      • 具备成为现代C++的技术分享者/布道者的初步能力(编写技术文章、制作教学视频...
      • 成为mcpp-standard项目的贡献者(至少合入一次PR
    • 扩展目标(可选
      • 了解活动/开源项目和社区的开发和运营方法
      • 参与活动/项目/社区的维护和开发
      • 成为mcpp-standard项目和社区的核心贡献者/开发者

    流程结构和玩法

    活动整体设计了主线剧情 + 可选的支线剧情

    • 核心玩法/主线: [学习现代C++核心特性 -> 把学到教会其他人 -> 参与社区讨论] 循环这个过程

    • 活动的任务发布和活动基于Github项目看板进行管理和记录
    • 虚线箭头表示可选路径, 详细介绍参考 -> MSCP | 流程结构详细介绍

    二、如何参与和游玩 ?

    由于活动涉及的项目/材料/工具内容, 几乎都是开源的, 所以理论任何人都可以参与该活动

    • 从完成第一个任务开始
    • 加入活动小组(可选)

    ::: tip

    如果参与中遇到问题/困难, 可以 查看 常见问题 或 在论坛创建话题贴 -> mcpp论坛

    注: 活动相关的文档/工具等资源可以查看 -> 活动地图

    :::

    三、社区

    • mcpp论坛
    • 活动工作流看板
    • mcpp活动交流群: 1067245099
    • MOGA交流群(可选): 1065632930

    四、相关链接

    • 活动地图
    • 常见问题
    • mcpp-standard项目开源仓库
    • 活动工作流看板
    • 活动记录

  • devcpp光标位置和显示乱码问题: 调完字体大小后光标位置不对啊,有没有大佬看看(用xlings下的文字也有问题)
    SPeakS SPeak

    @SPeak 在 调完字体大小后光标位置不对啊,有没有大佬看看(用xlings下的文字也有问题) 中说:

    http://forum.d2learn.org/post/418

    问题1: 界面乱码问题

    A1: xlings已经更新解决(增加了utf8编码的支持, 重装即可

    问题2: 代码输入光标位置问题

    解决方法1: 代码中不要包含中文内容
    解决方法2: 取消beta/utf8编码选项, 然后卸载重新安装devcpp

    xlings remove devcpp
    xlings install devcpp
    

    6c34d5cd-b1eb-4c7f-8181-1ca3ca6c673b-image.png


    中/英文切换: https://forum.d2learn.org/topic/134


  • 如果在我的商用软件中集成了这个Xlings开源项目是被允许的么
    SPeakS SPeak

    @woshihoujinxin 可以先用默认的配置


  • 如果在我的商用软件中集成了这个Xlings开源项目是被允许的么
    SPeakS SPeak

    看前面按理你应该是应该添加环境变量了, 是自己修改了源码吗?

    image.png


  • 如果在我的商用软件中集成了这个Xlings开源项目是被允许的么
    SPeakS SPeak

    @woshihoujinxin 按理会自动添加环境变量的, 可以尝试重新运行安装命令进行覆盖, 如果还有这个提示可以把完整的安装log贴上来


  • 如果在我的商用软件中集成了这个Xlings开源项目是被允许的么
    SPeakS SPeak

    @woshihoujinxin 目前mac上一些功能还没有适配, 现在适配最完整的是linux系统


  • 如果在我的商用软件中集成了这个Xlings开源项目是被允许的么
    SPeakS SPeak

    @woshihoujinxin 有个默认的变量 XLINGS_HOME

    • https://github.com/d2learn/xlings/tree/main/config/shell

  • 如果在我的商用软件中集成了这个Xlings开源项目是被允许的么
    SPeakS SPeak

    就像xlings在安装软件的时候就做了相关信息的提示

    image.png

    如果你有疑惑, 可以继续留言


  • 如果在我的商用软件中集成了这个Xlings开源项目是被允许的么
    SPeakS SPeak

    apache 2.0是可以商用的协议, 满足下面条件即可:

    • 软件安装包中包含xlings的协议文件(当然一般你直接使用的开源软件或库按理都是要包含协议和版本信息的, 分多个文件 或全放一个文件
    • 在软件的about或设置页面能查看到使用xlings开源软件的声明及版权信息(正确格式

  • project-auto-backup: 项目自动定时备份, 支持多项目 + 示例/模板项目 Project-Auto-backup
    SPeakS SPeak
    • 示例/模板项目: https://github.com/Sunrisepeak/project-auto-backup
    • git-autosync实现: https://github.com/d2learn/xim-pkgindex/tree/main/pkgs/g/git-autosync.lua

    project-auto-backup

    project auto backup by git-autosync (xscript

    Quick Start / 快速开始

    run in project root directory

    step0: get this project / 获取项目

    git clone https://github.com/Sunrisepeak/project-auto-backup.git
    

    step1: install deps(git-autosync) & auto config / 安装依赖并自动配置

    xlings install
    
    • download xlings
    • default sync project when 01:00 in everyday / 默认每天凌晨1点同步

    step2: add your git url to .git-autosync / 添加git仓库url到.git-autosync文件

    • support https and ssh

    step3: manual sync / 手动同步 (可选)

    git-autosync sync
    

    More Features / 更多功能

    **add sync task (option/default) **

    git-autosync add . --time "* * * 1 *"
    
    • --tmie: [Week Month Day Hour Minute]
      • * * * 1 *: when 01:00 for everyday
      • Mon * * 1 *: when Mon's 01:00 for every week

    get task list or log

    git-autosync log
    git-autosync list
    

    Other

    • xlings: https://github.com/d2learn/xlings
    • git-autosync: https://github.com/d2learn/xim-pkgindex/tree/main/pkgs/g/git-autosync.lua

  • 【xlings】一键安装配置Dev C++以及中/英文设置的三种方法, 镜像下载加速
    SPeakS SPeak

    @335582 可能是编码问题: http://forum.d2learn.org/post/597


  • devcpp光标位置和显示乱码问题: 调完字体大小后光标位置不对啊,有没有大佬看看(用xlings下的文字也有问题)
    SPeakS SPeak

    按照下面这个帖子的步骤设置一下编码, 重启电脑。然后看看能不能解决

    • http://forum.d2learn.org/post/418

  • 关于c++17结构化绑定的一些问题 - auto& [u_2, v_2] 结构化绑定, 为什么decltype(u_2)结果是int而不是int&呢
    SPeakS SPeak

    这里decltype 对结构化绑定的别名有个特殊处理 返回的 引用类型 是结构化绑定中特殊定义的, 不是传统认为的 引用类型, 指的是成员的声明类型, 除非成员是 T & 才会返回 T &

    image.png

    • https://en.cppreference.com/w/cpp/language/decltype.html

    image.png

    • https://en.cppreference.com/w/cpp/language/structured_binding.html

  • 项目代码在gtest单元测试中崩溃的问题
    SPeakS SPeak

    chain对象104, 3个对象中间asan插入了红区保护
    通过内存布局看 [00] 的访问(size_)是在104最后32字节的, 但依然报错

    image.png

    821b2e52-ffc5-4751-a9f8-306ac05b66ef-image.png

    并且非常奇怪的是, 插入crash代码(减少使用printf/cout 造成代码生成变化带来的干扰) 92可以执行到, 95行无法执行到

    14502bf3-0652-4f95-8779-5e65c987d49a-image.png

    怀疑的地方

    • 分配器内存对齐问题?
    • operator=的实现是否正确处理基类?
    • 哪里的代码造成UB, 导致代码生成出现问题?

  • 项目代码在gtest单元测试中崩溃的问题
    SPeakS SPeak

    感觉可能是哪里的实现造成了UB, 导致 加几个printf 造成的代码生成不一样 错误也不一样了


  • 【xlings】一键安装配置Dev C++以及中/英文设置的三种方法, 镜像下载加速
    SPeakS SPeak

    简介

    本文介绍三种Dev-C++中/英配置及切换方法

    • 首次安装见: 方法一或方法二
    • 已经安装后再修改见: 方法三

    方法一: 通过xlings自动配置

    在命令行窗口运行下面命令, 会自动下载配置好的中文版本。xlings开源工具: https://xlings.d2learn.org

    xlings install devcpp@chinese
    

    2cddba04-59be-4004-a6de-5c36a8b22405-image.png

    方法二: 第一次启动时

    在devcpp第一次启动时, 会提示环境的配置选项, 在这里可以选择对应的语言

    66721228-983e-4d2c-88f9-3004262655cc-image.png

    方法三: 通过菜单栏再次修改

    如果不小心错过第一次的语言配置, 可以通过工具栏重新配置

    c848adf2-da16-458c-963c-dc0396bcbdf9-image.png

    d5c64240-1e53-47a1-9a1c-ecc252b9b057-image.png

    8bc639fe-62a8-407a-bc18-5570ff26818f-image.png


    其他

    • xlings工具: https://xlings.d2learn.org
    • devcpp的xpkg文件: https://github.com/d2learn/xim-pkgindex/blob/main/pkgs/d/devcpp.lua

  • 求助 g++15.1使用std::execution对标准库算法加速遇到的问题 - 引入TBB头文件报错
    SPeakS SPeak

    如果只是使用C++23, 不一定要使用import std/模块特性 (tbb目前本身没有支持/适配


  • 求助 g++15.1使用std::execution对标准库算法加速遇到的问题 - 引入TBB头文件报错
    SPeakS SPeak

    目前来看tbb应该还没对 c++ module进行适配
    tbb.h 和 import std在一个模块混用会报错

    如果非要使用 import std功能的话 需要自己做一个 中间层 wrapper tbb的一些接口 ( 所有涉及tbb的功能在这个wrapper里实现 其他地方import 这个 wrapper 来使用功能) 但是这里面可能有不少坑 要踩

    下面是一个最小示例

    tbb.cppm

    module;
    
    #include <tbb/tbb.h>
    #include <vector>
    #include <iostream>
    
    export module tbb;
    
    export namespace tbb {
        void init_vec(std::vector<int>& vec) {
            if (vec.empty()) return;
            tbb::parallel_for(0, static_cast<int>(vec.size()), [&](int i) {
                vec[i] = i;
            });
            std::cout << "Vector initialization complete." << std::endl;
        }
    }
    

    main.cpp

    import std;
    import tbb;
    
    int main() {
        std::vector<int> data(1000);
        tbb::init_vec(data);
        std::cout << "First 10 elements: ";
        for (int i = 0; i < 10; ++i) {
            std::cout << data[i] << " ";
        }
        return 0;
    }
    

    具体工程示例: https://github.com/Sunrisepeak/TBBtest


  • 求助 g++15.1使用std::execution对标准库算法加速遇到的问题 - 引入TBB头文件报错
    SPeakS SPeak

    可以补充一下下面的信息:

    • 系统和工具链版本(gcc/cmake...
    • 报错的信息
    • 把最小可复现示例工程放到github上的一个仓库里, 方便其他人获取调试
    • 做过哪些尝试, 以及怀疑可能导致问题的原因
  • 登录

  • 没有帐号? 注册

  • 登录或注册以进行搜索。
d2learn forums Powered by NodeBB
  • 第一个帖子
    最后一个帖子
0
  • 版块
  • 最新
  • 标签
  • 热门
  • Online Tools
  • 用户
  • 群组