Нет ответа, пожалуйста, проблема была решена. Перейдите к концу вопроса, чтобы увидеть, что я сделал неправильно.Xor не срабатывает
Я бегу следующий Function
прочитать синтаксис конкретного стандарта либо FilePath
(Function
читает file first
, чтобы получить строку) или сам Text
(skips file reading
)
Public Function ReadStandard(Optional ByVal FilePath As String = Nothing, _
Optional ByVal Standard_Text As String = Nothing) As Boolean
в сделайте это возможным, только один из этих параметров должен быть установлен, а другой не должен быть установлен. Я не хочу использовать функцию как
Public Function ReadStandard(str as String, isFilePath as Booelean) As Boolean
Итак, чтобы сделать это возможным, я хочу использовать XOR, так как он должен сделать точную работу (если вы передаете 2 Booleans к XOR он должен возвращать только Правда, когда A! = B). Проведя некоторые исследования, я обнаружил, что это работает на vb.net: MSDN
Но по какой-то причине это не работает для меня;
If IsNothing(FilePath) Xor IsNothing(Standard_Text) Then (...)
Есть ли причина для этого? Или я забыл, что я узнал в те дни?
Оказывается, что я только что-то перепутал в своей логике. В следующей функции я забыл поставить Not
в If-Statement
If Not (IsNothing(FilePath) Xor IsNothing(Standard_Text)) Then
Throw New ArgumentException("FilePath or Standard_Text must be set.")
Return False
End If
Две отдельные функции 'ReadStandardFromFile()' и 'ReadStandardFromText()', вероятно, более разумны. Что значит «не работает»? –
В этом случае есть масса различных способов работы. Но дело не в этом. Для будущих проектов это будет полезно для использования Xor. Вот почему я спрашиваю. Чтобы понять логику VB.Net Xor. – Luke
Думаю, вы это понимаете. Вот почему я спросил, что вы подразумеваете под «не работает». Как вы проверяете это и какие материалы вы предоставляете? –