Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Khởi tạo bằng 0 (Zero Initialization) trong C++


Khởi tạo bằng 0 (Zero initialization) là việc đặt giá trị ban đầu của một đối tượng trong C++ thành 0.

Cú pháp

T{} ; char array [n] = “”;

Các tình huống mà khởi tạo bằng 0 được thực hiện:

  • Biến có tên với bộ nhớ static hoặc thread-local được khởi tạo thành 0.

  • Được dùng làm khởi tạo giá trị cho các kiểu non-class và các thành viên của class không có constructor.

  • Được dùng để khởi tạo mảng ký tự khi độ dài của nó lớn hơn số ký tự cần gán.

Điểm cần nhớ

  • Một số loại biến như biến static và thread-local được khởi tạo bằng 0 trước, sau đó khởi tạo lại giá trị khi được gọi.

  • Một con trỏ được khởi tạo bằng 0 gọi là con trỏ null (null pointer).

Ví dụ

Chương trình minh họa khởi tạo bằng 0 trong C++:

#include <iostream> 
#include <string> 
using namespace std; 

struct zeroInitialization { 
    int x, y, z; 
}; 

float f[3]; 
int* p; 
string s; 

int main(int argc, char* argv[]) { 
    zeroInitialization obj = zeroInitialization(); 
    cout << "Biến đối tượng khởi tạo bằng 0:\t"; 
    cout << obj.x << "\t" << obj.y << "\t" << obj.z << "\n"; 
    cout << "Giá trị float khởi tạo bằng 0:\t"; 
    cout << f[0] << "\t" << f[1] << "\t" << f[2] << "\n"; 
    cout << "Giá trị con trỏ khởi tạo bằng 0:\t"; 
    cout << p << "\n"; 
    return 0; 
}

Kết quả

Biến đối tượng khởi tạo bằng 0: 0 0 0 
Giá trị float khởi tạo bằng 0: 0 0 0 
Giá trị con trỏ khởi tạo bằng 0: 0