标签: initialization

为什么默认情况下没有使用NULL初始化指针?

有人可以解释为什么指针没有初始化NULL
例:

  void test(){
     char *buf;
     if (!buf)
        // whatever
  }
Run Code Online (Sandbox Code Playgroud)

程序不会进入if,因为buf它不是null.

我想知道为什么,在什么情况下我们需要一个带垃圾的变量,特别是指针解决内存上的垃圾问题?

c++ memory pointers initialization

117
推荐指数
7
解决办法
7万
查看次数

在Scala中,'val a:A = _'(下划线)究竟是什么意思?

究竟是什么val a: A = _初始化了一个值?这是一个打字的空吗?谢谢.

scala initialization

115
推荐指数
2
解决办法
2万
查看次数

如何在Go结构中设置默认值

以下问题有多种答案/技巧:

  1. 如何设置golang结构的默认值?
  2. 如何在golang中初始化结构

我有几个答案,但需要进一步讨论.

struct initialization default-value go

112
推荐指数
5
解决办法
12万
查看次数

为什么C++ 11不支持指定的初始化列表作为C99?

考虑:

struct Person
{
    int height;
    int weight;
    int age;
};

int main()
{
    Person p { .age = 18 };
}
Run Code Online (Sandbox Code Playgroud)

上面的代码在C99中是合法的,但在C++ 11中不合法.

什么是标准委员会排除了这样一个方便的功能支持的理由?

c c++ initialization c99 c++11

110
推荐指数
5
解决办法
5万
查看次数

什么时候进行静态类初始化?

何时初始化静态字段?如果我从不实例化一个类,但是我访问一个静态字段,是否所有静态块和私有静态方法用于实例化那个时刻调用的私有静态字段(按顺序)?

如果我调用静态方法怎么办?它是否也运行所有静态块?方法之前?

java static initialization

107
推荐指数
2
解决办法
7万
查看次数

将结构初始化为0

如果我有这样的结构:

typedef struct
{
    unsigned char c1;
    unsigned char c2;
} myStruct;
Run Code Online (Sandbox Code Playgroud)

将此结构初始化为0的最简单方法是什么?以下是否足够?

myStruct _m1 = {0};
Run Code Online (Sandbox Code Playgroud)

或者我需要将每个成员显式初始化为0吗?

myStruct _m2 = {0,0};
Run Code Online (Sandbox Code Playgroud)

c struct initialization

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

delphi变量是否默认使用值初始化?

我是Delphi的新手,我一直在运行一些测试来查看默认情况下初始化了哪些对象变量和堆栈变量:

TInstanceVariables = class
  fBoolean: boolean; // always starts off as false
  fInteger: integer; // always starts off as zero
  fObject: TObject; // always starts off as nil
end;
Run Code Online (Sandbox Code Playgroud)

这是我习惯使用其他语言的行为,但我想知道在Delphi中依赖它是否安全?例如,我想知道它是否可能依赖于编译器设置,或者可能在不同的机器上以不同的方式工作.依赖于对象的默认初始化值是正常的,还是在构造函数中显式设置所有实例变量?

至于堆栈(过程级)变量,我的测试显示单位化布尔值为真,单位化整数为2129993264,未初始化对象只是无效指针(即不是nil).我猜测规范是在访问它们之前始终设置过程级变量?

delphi variables initialization

101
推荐指数
9
解决办法
6万
查看次数

无法实例化List <Product>类型

我有以下代码:

List<Product> product = new List<Product>();
Run Code Online (Sandbox Code Playgroud)

错误:

Cannot instantiate the type List<Product>
Run Code Online (Sandbox Code Playgroud)

Product是我的EJB项目中的实体.为什么我收到此错误?

java ejb initialization list

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

关于C中数组初始化的困惑

在C语言中,如果初始化一个这样的数组:

int a[5] = {1,2};
Run Code Online (Sandbox Code Playgroud)

那么未明确初始化的数组的所有元素将用零隐式初始化.

但是,如果我初始化这样的数组:

int a[5]={a[2]=1};

printf("%d %d %d %d %d\n", a[0], a[1],a[2], a[3], a[4]);
Run Code Online (Sandbox Code Playgroud)

输出:

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

我不明白,为什么a[0]打印1而不是0?是不确定的行为?

注意:这个问题是在接受采访时提出的.

c arrays initialization language-lawyer

101
推荐指数
3
解决办法
4928
查看次数

C char数组初始化

我不确定在初始化后以下列方式在char数组中会出现什么.

1. char buf[10] = "";
2. char buf[10] = " ";
3.char buf[10] = "a";

对于情况2,我认为buf[0]应该是' ',buf[1]应该是'\0',从buf[2]buf[9]会随机内容.对于情况3,我认为buf[0]应该是'a',buf[1]应该是"\ 0",以及buf[2]buf[9]会随机内容.

那是对的吗?

对于案例1,将会是什么bufbuf[0] == '\0'从哪里buf[1]buf[9]随机内容?

c arrays buffer initialization char

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

标签 统计

initialization ×10

c ×4

arrays ×2

c++ ×2

java ×2

struct ×2

buffer ×1

c++11 ×1

c99 ×1

char ×1

default-value ×1

delphi ×1

ejb ×1

go ×1

language-lawyer ×1

list ×1

memory ×1

pointers ×1

scala ×1

static ×1

variables ×1