向量初始化(IBM 扩展)
向量类型由向量字面值或具有相同向量类型的任何表达式初始化。 例如:
vector unsigned int v = (vector unsigned int)(10);
AltiVec 规范允许由初始化列表初始化向量类型。 此功能是与 GNU C 兼容的扩展。
与向量字面量不同,初始化器列表中的值不必是常量表达式,除非在需要常量值的上下文中;
全局向量变量的初始化就是这样一个上下文。
因此,以下代码是合法的:
全局向量变量的初始化就是这样一个上下文。
因此,以下代码是合法的:int i=1;
int function() { return 2; }
int main()
{
vector unsigned int v1 = {i, function()};
return 0;
}