Im cố gắng tìm ra các thực hành tốt nhất là những gì khi khởi tạo biến nhất định ... Mã của tôi trông như thế này vào lúc này:Khởi tạo biến trong vòng lặp
int nHexCount = 0;
int prevState = sc.state;
bool bOnlySpaces = true;
bool bIsValidLabel = true;
bool bIsHotstring = false;
bool bIsValidName = true;
bool bIsValidExpStart = false;
bool fInExpression = false;
bool fInStringBlock = (sc.state == SCE_AHKL_STRINGOPTS || sc.state == SCE_AHKL_STRINGBLOCK);
for (; sc.More(); sc.Forward()) {
if (sc.atLineStart) {
if (!fInStringBlock && sc.state != SCE_AHKL_COMMENTBLOCK)
sc.SetState(SCE_AHKL_DEFAULT);
// Reset Status
prevState = sc.state;
bOnlySpaces = true;
bIsValidLabel = true;
bIsHotstring = false;
bIsValidName = true;
bIsValidExpStart = false;
fInExpression = false;
}
...
Như bạn có thể thấy hầu hết các biến được thiết lập lại mỗi lần chương trình của tôi tìm thấy một dòng mới trong thành phần chỉnh sửa tôi đang làm việc trên ...
câu hỏi đặt ra sẽ là:
có thực hành lập trình tốt hơn tuyên bố và khởi tạo tất cả các biến bên trong vòng lặp for hoặc tôi nên để nó như nó là vào lúc này?
Nó phụ thuộc: Bạn có cần chúng nằm ngoài phạm vi của vòng lặp foor? – alestanis