Tôi đang cố truy cập trường static
của số struct
mà tôi đã xác định là công khai. Tuy nhiên, tôi vẫn còn "không thể tiếp cận do mức độ bảo vệ của nó" Bất cứ ai có thể giúp tôi?C# Cách truy cập trường tĩnh của cấu trúc công khai
public class Program
{
public struct AT_CMD
{
static int x = 7;
static byte[] cmd_mode = new byte[3] { 0x2B, 0x2B, 0x2B };
static byte[] end_device_assoc = new byte[4] { 0x41, 0x54, 0x41, 0x31 };
//should be 0 for end device, default is 0
static byte[] data_rate = new byte[4] { 0x41, 0x54, 0x42, 0x44 }; //3 for 9600, 5 for 38400
static byte[] channel = new byte[4] { 0x41, 0x54, 0x43, 0x48 }; //0x0B-0x1A
static byte[] Dest_addr_high = new byte[4] { 0x41, 0x54, 0x44, 0x48 }; //0 FOR 16bit
static byte[] Dest_addr_low = new byte[4] { 0x41, 0x54, 0x44, 0x4C };
static byte[] my_addr = new byte[4] { 0x41, 0x54, 0x4D, 0x59 }; // 0-0xFFFF
static byte[] carriage_return = new byte[1] { 0x0D };
}
static void Main()
{
int y = AT_CMD.x;
}
}
cảm ơn rất nhiều, vì vậy ngay cả khi tĩnh, vẫn riêng tư ... phải không? – fiftyplus
@gpakillsme: Không, về mặt kỹ thuật, mặc định là 'nội bộ', mặc dù sự khác biệt có thể không quan trọng đối với trường hợp của bạn. Xem [tại đây] (http://msdn.microsoft.com/en-us/library/ms173121.aspx) để biết thêm thông tin. –
@BlueRaja: Thực ra, nội bộ là mặc định cho một cấu trúc/lớp không lồng nhau (có nghĩa là 'struct AT_CMD' giống như' internal struct AT_CMD' nếu không lồng nhau). Mặc định cho các thành viên class/struct là 'private'. –