gpt4 book ai didi

函数调用或构造函数调用中的 C++ 数组初始化

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:32:17 26 4
gpt4 key购买 nike

此问题与帖子 here 有关.是否可以在函数调用或构造函数调用中初始化数组?例如,类 foo 的构造函数需要一个大小为 3 的数组,所以我想调用 foo({ 0, 0, 0 })。我试过这个,但它不起作用。我希望能够在其他对象的构造函数初始化列表中初始化 foo 类型的对象,或者在不首先创建单独数组的情况下初始化 foo。这可能吗?

最佳答案

不在当前标准中。在 C++11 中将成为可能

在 gcc 中,您可以使用强制转换来强制创建时间,但这不是标准的 c++ (C99):

typedef int array[2];
void foo( array ) {} // Note: the actual signature is: void foo( int * )
int main() {
foo( (array){ 1, 2 } );
}

关于函数调用或构造函数调用中的 C++ 数组初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2676697/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com