网站设计风格及特点,跨平台网站开发,项目营销策划公司,网站关键词长尾词原文
更改编译器
禁止使用-previewfixImmutableConv从const(void)[]复制到void[]
如果const(void)[]数据包含尾常指针,则复制到void[],随后可能会违反常数据:
void f(int*[] a, const int*[] b)
{void[] va a;const void[] vb b;va[] vb[]; //用常指针填充*a[0] 0; //更…原文
更改编译器
禁止使用-previewfixImmutableConv从const(void)[]复制到void[]
如果const(void)[]数据包含尾常指针,则复制到void[],随后可能会违反常数据:
void f(int*[] a, const int*[] b)
{void[] va a;const void[] vb b;va[] vb[]; //用常指针填充*a[0] 0; //更改常数据
}不再允许用-previewfixImmutableConv开关复制vb数据到va.
现在按十六进制串对待导入式
虽然导入式的类型为串,但也用它们来嵌入二进制文件.通过按十六进制串对待它们,会隐式按整型数组而不是符数组,来转换它们.
//以前,需要一个转换:
immutable ubyte[] iconImg cast(immutable ubyte[]) import(icon.png);
//现在,隐式地按整型数组转换它:
immutable ubyte[] iconImg import(icon.png);除了0或1以外的极值,都不安全
(针对2.109)已更新规范,因此只有0和1是极的安全值.即读取其底层字节表示设置了其他位的极值是实现定义的,应避免它.
因此,在安全代码中已弃用以下内容: 1,极的空初化(自2.109起) 2,从联中读取极字段(自2.109起) 3,按极动态数组类型转换运行时动态数组. 4,按尾可变动态数组类型,转换运行时极动态数组 5,按极指针类型转换指针. 6,按尾可变指针类型转换极指针.