Closed vairad closed 9 years ago
Pardon, téhle části aplikace nerozumím, ale zaujal mi ve třídě několikrát se vyskytující cyklus ve tvaru: while (true || .... Ta druhá část podmínky asi nemá úplně smysl a nekonečný cyklus by bylo lepší zapsat jen jako while (true) nebo while (1), aby byl kód přehlednější. Nebo případně odstranit níže psanou podmínku if(!BluetoothFindNextDevice(... a to true ve while podmínce.
Ten cyklus není nekonečný. Cykl skončí jakmile není nalezeno další zařízení.
Ano není nekonečný, jen je nevhodně zapsaná podmínka... Kde opravdu stačí jen true a pokud je potřeba volat metodu za OR tak ji zavolat. Je to nebezpečné, protože výkoný kód v podmínce if se nemusí stát (a tenhle se asi nestane, nebo ano? ... Protože true před OR je jasně splněná podmínka)
Jen si dovolím ještě jednu prosbu ohledně pojmenování proměnných.
res_WhatTHEresIS_refactorIT
) int res = BluetoothAuthenticateDeviceEx(NULL, NULL, &btDeviceInfo, NULL, MITMProtectionRequiredBonding);
A druhou ohledně tříštění jazyka: Je to kvůli windowsům tahle mezinárodní část, nebo by to šlo sjednotit?
if (res == ERROR_CANCELLED){
emit ConnectionChanged("The user aborted the operation.");
}
if (res == ERROR_INVALID_PARAMETER){
emit ConnectionChanged("The device structure specified in pbdti is invalid.");
}
if (res == ERROR_NO_MORE_ITEMS){
emit ConnectionChanged("Zařízení je spárované, navazuji spojení...");
}
if (res == ERROR_NOT_AUTHENTICATED){
emit ConnectionChanged("The operation being requested was not performed because the user has not been authenticated.");//endl;
}
if (res == ERROR_SUCCESS){
emit ConnectionChanged("Spojeni úspěšně navázáno");
}
Ta metoda vypadá strašně složite. Něšlo by jí nějak logicky rozkrájet, aby to bylo vstřebatelné? A mísí se ti tam české a anglické řetězce. Plus tam máš za úkol jedno přejmenování proměnné.
Přidal jsem tam nějaké závorky k ifům, aby to bylo "bezpečnější" a aby jsi viděl, že jsem se to snažil přečíst a pochopit.