banner

可见,担心一个以防御为主的无人车主动伤害人类,可能还为时过早。

上面这些还是“假设”层面的问题,针对无人车的法律法规、自动驾驶汽车监管、事故时

tips

的责任界定等问题可以说就近在眼前。

目前,无人驾驶技术在欧盟以及美国一些州都存在法律障碍。欧盟交通法律规定,汽车

必须由持有相应驾照的司机驾驶,任何人不得以任何理由接管驾驶权。美国只有四个州支持

自动驾驶汽车上路。

但在法律层面上的“举步维艰”不会持续太久了。2015年,根据谷歌所描述的车辆设

计,“美国国家高速公路交通安全管理局把这种车的‘司机’理解为自动驾驶系统,而不是车上

的人”。即接受了谷歌的说法数据。例如,假设要表示一个4行3列的数组,可以将信息存储在一个包含12个元素的valarray对象中,然后使用一个slice(0,3,1)对象作为下标,来表示元素0、1和2,即第1行。同样,下标slice(0,4,3)表示元素0、3、6和9,即第一 列。程序清单16.19演示了slice的一些特性。

程序清单 16.19          vslice.cpp

对于valarray对象(如valint)和单个int元素,+操作符已经被定义;但正如程序清单16.19中指出的,对于使用slice下标指定的valarray单元,如valint[slice(。

7.3.2 将常量组合在一起

编译器可以帮们做的一件事是计算常量表达式。请看下面这个表达式

seconds = 24 * 60 * 60 * days;

或是

seconds = days * (24 * 60 * 60);

编译器会计算表达式中的常量部分,产生类似下面的表达式:

seconds = 86400 * days;

但是,如果程序员这样写:

seconds = 24 * days * 60 * 60;

编译器只能在运行时进行乘法计算了。

因此,我们应当总是用括号将常量表达式组合在一起,或是将它