相关疑难解决方法(0)

如何将数组的所有成员初始化为相同的值?

我在C中有一个大数组(如果有所不同,则不是C++).我想将所有成员初始化为相同的值.我发誓我曾经知道一个简单的方法来做到这一点.我可以memset()在我的情况下使用,但是没有办法在C语法中构建这样做吗?

c arrays array-initialize initialization

934
推荐指数
13
解决办法
179万
查看次数

在C++ 11中创建N元素constexpr数组

您好我正在学习C++ 11,我想知道如何制作一个constexpr 0到n数组,例如:

n = 5;

int array[] = {0 ... n};
Run Code Online (Sandbox Code Playgroud)

所以阵列可能是 {0, 1, 2, 3, 4, 5}

c++ array-initialization constexpr c++11

56
推荐指数
4
解决办法
4万
查看次数

为什么我的struct的成员没有使用`{}`正确初始化?

我有以下代码:

#include <iostream>

struct T
{
   int a, b, c;
};

int main()
{
   T t = {0};
   std::cout << t.a << ',' << t.b << ',' << t.c << '\n';
}
Run Code Online (Sandbox Code Playgroud)

输出:

0,0,0
Run Code Online (Sandbox Code Playgroud)

经过多年的代码在一个关键的生产环境中愉快地运行,提供一个重要的功能,项目的要求发生了变化,我需要输出1,1,1.

于是,我换{0}{1}:

#include <iostream>

struct T
{
   int a, b, c;
};

int main()
{
   T t = {1};
   std::cout << t.a << ',' << t.b << ',' << t.c << '\n';
}
Run Code Online (Sandbox Code Playgroud)

输出:

1,0,0
Run Code Online (Sandbox Code Playgroud)

1,1,1反而期待了. …

c++ initialization c++-faq

14
推荐指数
1
解决办法
4647
查看次数