V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  geelaw  ›  全部回复第 5 页 / 共 172 页
回复总数  3422
1  2  3  4  5  6  7  8  9  10 ... 172  
90 天前
回复了 Cineray 创建的主题 TeX LaTeX 报错有时候真感觉挺无力的
技巧是看第一个错误,说的是 \ExplSyntaxOn 是未定义的控制序列,这是 LaTeX 3 的 expl3 功能,于是目前有两种可能,一是你的 TeX 没有支持它,二是某段代码破坏了这个控制序列。

我想提示到这里你可以继续尝试调试了。
void foo(int nums[]) 和 void foo(int *nums) 没啥区别,要同时知道长度的话,用 template <size_t n> void foo(int (&nums)[n])
91 天前
回复了 James369 创建的主题 问与答 软件的许可协议 具备法律效力吗?
问不对题,GitHub 和 Gitee 不是软件,而是服务。另外“法律”也并不是只有一个,比如中国和美国和法国的法律就不同。

1. 任何协议(合同)都可能是有效或无效的,如果合同合法且是双方自愿订立,则有效;合同不能排除被法律禁止排除的权利,不能授予被法律禁止授予的特权,格式合同(一个签定方拟定,给不特定人签订,且不修改条款的合同)的限制更多;很多合同都有可分性的说明,如果一款无效,是否影响其他款,云云。

2. 可以随便自创。

3. 可以有期限也可以没有,取决于你怎么写。考虑软件的情况的话,假设 A 和 (A+1) 两个版本的协议本身都没有期限,但不同,客户同意 A 版本的协议,则可以按照那个协议无限期使用 A 版本,不同意 (A+1) 版本的协议,不影响继续使用 A 版本。考虑服务的情况的话,通常来说条款里都有随时可以停止服务,因此协议更新之后,提供服务的人可以选择不再在旧版协议下提供服务,此时客户只能不再使用服务,或者同意并按新版协议使用。

4. 各种。

5. 看协议文本,以及诉讼。

举几个软件协议的例子吧:

1. 如果你购买了早期零售版本的 Windows ,你会发现许可协议必须拆包才能查看,协议里面有提到,如果你不同意协议,可以尝试退款。

2. GNU 的软件,不接受 GPL 也是可以使用的。如果你想修改并发布修改版,则必须接受 GPL 。

3. GPLv2 没有扶正( cure )条款,因此如果用户违反了 GPLv2 ,则他会丧失 GPLv2 授予的一切特权,直到所有的版权持有人同意恢复为止。GPLv3 有扶正条款,如果用户违反了 GPLv3 ,则他会丧失 GPLv3 授予的一切特权,除非:

3(1) 他停止一切侵权行为,如果没有被版权持有人通知,则暂时恢复;
3(2) 他停止一切侵权行为,如果 60 日内没有被版权持有人通知,则永久恢复;
3(3) 他收到了版权持有人 A 的通知,且在 30 天内停止一切侵权行为,且这是第一次收到 A 的通知。

4. 中国的 2002 版《计算机软件保护条例》第十七条:

>为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。

因此在 2002 年的中国为了学习 Windows 而安装 Windows ,不存在“盗版”的问题。当然,如果在安装的 Windows 上娱乐,则被 Windows 的许可协议约束。

---

最后,理解协议具有法律效力并不难,考虑超市买水果,价格标签写的是 5 元/斤,如果不同意支付价格,当然就无权带走水果,如果已经支付价格,商户就无权阻止带走对应的水果。
Word salad 入脑这么严重了吗……

流媒体的主要场景是专业公司制作了影音内容后订户通过边下载边播放、播放完就删除(流)的方式观看。通常的担忧是作品被非法原样复制从而失去向订户征收的费用,但作品的版权被谁持有的问题通常无争议。

洗稿、抄袭、盗图的受害者通常是体量较小的文艺工作者,他们的作品通常不是以“流”的模式放送的。主要担忧是作品的版权被谁持有。
同时有多个会话登录同一个账户是可以的,Windows Server 至少从 2003 开始就支持了,但此时软件的行为不是 Windows 可以控制的,是否会导致数据冲突还要看各个软件的实现。此外通常的软件即使允许单用户多会话使用,也是合并两个会话对状态的变化,而不是有两个不同的资料,因为会话是暂态对象,重启操作系统之后软件不可能知道哪个会话对应哪个实际的人。

最后,软件授权合法性(是否盗版)不因技术绕过编程限制而改变。
94 天前
回复了 SimleCp 创建的主题 招商银行 招商银行是会监听储户的余额吗
从数据的角度,你当然希望银行(作为一个法人)知道它欠你多少钱(你的账户余额);从技术实现上来讲应该是软件处理交易之后通知支行可以做营销,毕竟一个支行的客户还是很多的,不可能派人人工盯着;可以理解成是银行(作为法人)请它的员工(某种意义上是银行的代理人)帮助它(银行作为法人)处理数据,并不是员工以自然人的身份处理你的数据。
94 天前
回复了 MMMing 创建的主题 Windows 有没有办法保持两台电脑一致
@geelaw #16 现在的解决方法似乎是直接把用户配置路径设置为网络共享路径……
94 天前
回复了 MMMing 创建的主题 Windows 有没有办法保持两台电脑一致
上古时代的解决方案是 Windows 用户配置文件漫游,但现在已经弃用了。
98 天前
回复了 KIRAYOMATO 创建的主题 Windows Windows 的通知怎么样可以一次弹出多条?
答案是把 scenario 设置为非 default 的情况

https://learn.microsoft.com/en-us/windows/apps/design/shell/tiles-and-notifications/toast-schema?source=recommendations#toastscenario

盲猜 Chrome 用的是 reminder

测试 Windows 通知功能可以用 Notifications Visualizer 软件 https://www.microsoft.com/store/productId/9NBLGGH5XSL1?ocid=pdpshare

另外我记得 Windows 8 的情况是可以显式三条,在屏幕右上角。
从渊源来说这个符号来自于 \mapsto ,初次引入应该是 Bourbaki 著《积分》第一章到第四章的部分,见 https://hsm.stackexchange.com/a/5777 翻了一下,第 13 页有

Corollaire. On suppose que M(1) = 1 ; alors, pour toute fonction numérique finie f, définie dans X, l'application p ↦ N_p(f) est croissante dans ]0, +∞[.

如果要找可以机器执行的语言(“编程语言”)则比较困难,一个思路是先找支持 anonymous function 的语言,然后一个一个查看它是否有、何时引入了箭头记号。
99 天前
回复了 Chiqing 创建的主题 问与答 Windows 让每个链接都在选定浏览器中打开
也可以自己写,不难。我自己实现了一个类似的小玩意儿:打开 PDF 的时候如果文件夹下有对应的 TeX 文件则用 MiKTeX 打开,否则用 Acrobat Reader 打开。参考代码 https://github.com/GeeLaw/PowerShellThingies/blob/master/scripts/SurrogateUser/launchpdf.cc
99 天前
回复了 viewer003 创建的主题 macOS 加了公司域的 Mac 有多大的隐私问题?
这不仅仅是加域的问题,既然电脑是公司给配的,操作系统上可能也已经预装了各种乱七八糟的软件了。
Explorer 只能计算它(用户)有权限访问的文件大小,并且不会考虑卷影副本( volume snapshot ),此外我怀疑 Explorer 不支持超长路径文件(超过 260 个 UTF-16 )。

cleanmgr 删除的临时文件似乎是多日未曾访问过的(不记得具体天数了),要完全删除可以用另一个管理员账户删掉这个用户的 TEMP 下面的所有内容。
>2500 刀每个月, 没有税

震惊,初次留学读博的话,大概是 nonresident alien ,中国人减免 5000 USD/a 的与学校有关的收入,没有标准扣除,因此每年的 effectively connected income after deduction 是 25k ,依然要交税的。

如果是 fellowship 而不是 assistantship (雇佣关系)的话另说。

IANAL/TP, NL/TA.
可以用编辑距离建模。

准备工作:找一本字典,记住所有的标点、空白、汉字,以及同一个字的不同写法(简体繁体异体字)。

1. 两个字符串都删除所有的标点空白,只留汉字。
2. 计算编辑距离最小的编辑:把一个字替换为它的其他写法、删除一个字、增加一个字的代价可以都设置为 1 (这样的话把一个字改成和它没关系的另一个字的代价就是 2 )。

第二步是标准的动态规划问题。
110 天前
回复了 KlNon 创建的主题 问与答 有没有这么一款剪切版软件?
@r3a1ex0n0 #10 可以,但是这样做就必须用 Ctrl+V 访问粘贴功能,然而用户可以选择用鼠标、用 Shift+Ins 粘贴。我选择采用 psychic debugging 之“揣摩出题人的意图”。
110 天前
回复了 KlNon 创建的主题 问与答 有没有这么一款剪切版软件?
如果是读取剪贴板数据的软件实现,当然没有问题,第一次按 Ctrl+V 之后,软件读到 1,2,3,4,5,6,7,8,9 ,然后记住目前在输出列表,如此这般,这般那般,皆大欢喜。

如果是放置剪贴板数据的软件这样做,则 Windows 上不存在可靠的方法实现这个需求。

Windows 的剪贴板数据流是这样的:

1. 程序 A 打开剪贴板并清空之,此时剪贴板的所有者是 A 。如果剪贴板曾经有所有者 C ,则 C 被告知它已经不是所有者。
2. A 在剪贴板上放置各种数据,并标记一些格式延迟渲染。
3. A 关闭剪贴板。

4. 程序 B 打开剪贴板并查询支持的格式。
5. B 选择一些格式获取数据。
6. 如果获取的数据是非延迟渲染,则 A 被告知需要渲染某格式,此时 A 把数据放入剪贴板。
7. B 关闭剪贴板。

这一段表明,若剪贴板上某个格式(例如字符串)已经有数据(非延迟渲染,或延迟渲染且已经渲染过),则再次读取那一格式的时候 A 不会知道,也就是某个格式的数据一旦放入剪贴板,A 就不会在有机会考虑修改它了。

一种思路是这样的:A 设置字符串是延迟渲染,并且在第一次被要求渲染的时候放入 1 ,然后在 B 读完之后重设为延迟渲染(下次放入 2 ),或者放入 2 。

这样做不可靠有理论原因和实际原因,理论原因是 A 不可能知道 B 什么时候读取完毕,实际原因是 B 读取一次不代表用户粘贴一次,比如各种 Office 程序,当鼠标悬停在“粘贴”上的时候就会读取一次剪贴板显示预览,但用户不一定要真的粘贴,A 自然无从判断 B 读取之后是否应该“前进”。
@Bingchunmoli #5 这个问题是很奇怪的,因为 merge commit 是常态,squash merge 是非常态。如果 git merge 不加 --squash 那么 Git 在默认设置下就会采用 merge commit 。

但这些实操并不重要,随便搜索一下就知道了。我的回复想要表达的是这个:Git 中一切信息都来自于每个 commit 里面的内容和 commit 的亲子关系,任何计算(例如 merge 如何 merge )当然只能基于这些信息。Squash merge 会导致 Git 记录的信息和人类心中的信息不一样,两种解决方案无非是告诉 Git 正确信息的方法。
是 merge 不是 megre 。

在 A 上 git merge --squash B 的意思是在 A 之后建立一个 commit C ,它的 parent 是 A ,效果是 A 和 B 的 merge base 以来 B 的变化的复合。这相当于在 A 上面把 B 里面的事情重做一次再 commit ,因为 C 的 parent 没有 B (换言之,Git 认为 C 和 B 没有关系),所以继续在 B 、C 开发后再次 merge ,会导致 Git 以为 B 和 C 包含重叠的变化,于是 Git 不知道怎么办(是接受一次呢,还是接受两次呢,还是……),即冲突。

由此可见两种解决办法:一是 B 继续开发之前重新指向 C ,于是下次 merge 的时候 B 先前的变化就不是 merge 的考虑范围了;二是采用 merge commit ,让 C 记住自己来自于 A 和 B 。
1  2  3  4  5  6  7  8  9  10 ... 172  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5401 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 70ms · UTC 08:14 · PVG 16:14 · LAX 01:14 · JFK 04:14
Developed with CodeLauncher
♥ Do have faith in what you're doing.