最近在读Andrew Altman的Arguing About Law: An Introduction to Legal Philosophy,发现了许多意思相近但又彼此区别的法律名词,这里简单地总结一下。需要说明的是,笔者没有英语或法律方面的专业背景,本文的解释或许存在问题,但笔者尽力列出了每条解释的来源,供读者参考。

阅读全文 »

Aesthetics from Classical Greece to the Present

Monroe C Beardsley

[美] 门罗 · C.比厄斯利 高建平译本

序言

美学(aesthetics)与艺术哲学(philosophy of art),虽然他们的内容很相似,但也存在一些区别。作者和很多通行的做法都使用美学来概括那些属于艺术哲学范畴的东西。

阅读全文 »

Ch 2 Justifying the state

为什么我们对政府具有道德上的责任?

Consent Theory: 对于洛克(Locke),他认为人生来自由、平等、独立,任何人都不能生来就能够统治他人。若是,则其他人必须同意(consent)他的统治。因此,对于洛克,政府的合法性问题就转变成了政府的权威如何能与每个每个人自然的自治的生活(the natural autonomy of the individual)相适应(reconciled)。[p.35]

Utilitarian Theory: 对于边沁(Bentham),政府的合法性来源于它能最大化社会的总体幸福(total happiness),并且只有它比其他的政府更能做好这一点,它才具有合法性,而个人的同意是不相关的。[p.35]

阅读全文 »

海明校验

☆海明码是什么?

海明码是一种可以对数据校验,并至多可以校正一位出错的校验方法。

海明码有以下特点:

  • 海明码使用多重奇偶校验
  • 海明码可以校正一位出错,并且可以指出出错的位置。
  • 即使,校验位出错,对海明码的校验也没有影响。
  • 海明码的校验位长度有规定。

海明码有n位数据和k位校验码组成n+k位,即p = n + k。海明码可生成k位的指示码$G_kG_{k-1}…G_1$

阅读全文 »

整数的表示

无符号数的原码

即无符号数的二进制表示。

无符号数原码表示的范围从0到2^n^ -1,即{0,1}^w^ → {0,1,…,2^w^ -1}

补码

定义

最高有效位权重被解释为负权,其他有效位权重为正权,对于向量$\vec{x}=[x_{w-1},x_{w-2},…,x_0]$

函数B2T~w~ (Binary to Two’s-complement)为

$B2T_w = -x_{w-1}2^{w-1}+\sum_{i=0}^{w-2}x_i2^i$

阅读全文 »

《西方哲学史》希尔贝克 读书笔记

Notes

在这里记录一下自己感兴趣的问题:

  1. 是否存在普遍的善和正当的价值规范存在

    智者派的相对主义

    苏格拉底的驳斥

    柏拉图的理念论

阅读全文 »

在vscode中配置cmake

配置includePath

vscode的静态语法检查是 intellisense 完成的,想要使它能搜寻到指定的includePath需要这要做:

  1. ctrl p,输入c/c++ edit configurations(JSON),这会在本地的./vscode/下创建c_cpp_properties.json 在includePath里面添加上自己的include path即可

配置generator

首先 ctrl+p,输入settings.json,点击 “首选项:打开工作区设置(JSON)”。

此操作会创建 ./vscode/settings.json 在此文件中加入"cmake.generator" : "MinGW Makefiles" 根据不同的系统,配置不同的generator。

阅读全文 »

C++ 面向对象编程

C++ 的类

this 指针

调用成员函数时,成员函数通过名为this的额外隐式参数访问调用它的那个对象。

在成员函数内部,任何对类成员的直接访问都被看作是对this的隐式使用

this指针总是指向调用成员函数的对象,因此,this指针是一个常量指针,它的const是顶层const,即它永远不会改变它指向的位置。

阅读全文 »

constconstexpr

constexpr

常量表达式:是指值不会改变且在编译期间就可以计算处结果的表达式

常量表达式是由

  • 数据类型
  • 数据初始值

决定的。

int a = 1 a 不是一个常量表达式,因为它的数据类型不是常量

const int b = get_val() b不是一个常量表达式,因为它的初始值不是常量

由于使用const 不能确定一个表达式是不是常量,因此C++11使用constexpr 修饰符,可以让编译器在编译期间检查一个表达式是不是常量。

阅读全文 »