0%

  • 我们知道,在创建 docker 网络时,docker 会自动为其分配一个网关,而这个默认网关往往是 172 网段的,企业的内网机器往往也是在这个网段,如果某个机器的内网 ip 恰好被 docker 分配的网关所占用的话,就会导致无法从该机器连接至服务器上。所以,我们必须要修改 docker 分配的默认网关地址,将其改为 192 网段,以避免冲突。
阅读全文 »

  • 最近写的作业中需要使用随机数,感觉曾经用的 rand() % mod 产生的随机数分布可能不够好,于是就查询了一下 C++ 有什么新的随机数产生器。
  • 经过查询,我发现在 C++ 11 标准中,我们可以用 uniform_int_distribution<> dist(min,max) 以正态分布来获得[min,max]中的随机数。同时,我们可以使用 random_device rd() 来随机产生一个种子,用来模拟真随机。但若我们使用 GCC 编译器,在 Windows 平台下,它的 random_device 会去调用系统API rand_s,导致产生的种子每次都是一模一样的。这也导致了我作业中每次随机的结果都完全相同。
  • 解决起来其实很简单,如果坚持使用 Windows 平台,可以考虑使用 MSVC 编译器,微软实现的 random_device 是很贴近真随机的,或者直接通过 WSL 使用 Linux 环境下的 GCC 编译器即可。