Случается, когда в неожиданном месте есть T_XXX
токен , несбалансированные (лишние) круглые скобки, использование короткого тега без его активации в php.ini и т. д.
Вопросы, относящиеся:
Для получения дополнительной помощи см .:
Это работает как это:
(condition) ? true-clause : false-clause
Это обычно используется в операциях присвоения, хотя это имеет другое использование также. Тернарный оператор ?
является способом сократить если-выражение-else и также назван непосредственным - если оператор на других языках (IIf(condition,true-clause,false-clause)
в VB, например).
, Например:
bool Three = SOME_VALUE;
int x = Three ? 3 : 0;
совпадает с
bool Three = SOME_VALUE;
int x;
if (Three)
x = 3;
else
x = 0;
Это работает как это:
expression ? trueValue : falseValue
то, Которое в основном означает, что, если expression
оценивает к истинному, trueValue будет возвращен или выполнен, и falseValue, будет возвращено или оценено если нет.
Помнят, что trueValue и falseValue будут только оценены и выполнены, если выражение будет TRUE или FALSE, соответственно. Это поведение называют, срывая.
В C++ там является не фактическим если часть этого. Это назвало тернарный оператор. Это используется как это: < булевская переменная statement>? < закончитесь если true>: < закончитесь если false>; Поскольку Ваш пример выше его был бы похож на это:
C = A > B ? A : B;
Эта статья о Википедии также обсуждает его: http://en.wikipedia.org/wiki/Ternary_operation
Я предполагаю, что Вы имеете в виду материал как = b? c: d, где b является условием, c является значением, когда b верен, и d является значением, когда b является ложью.
Я бы сказал? это короткий путь. Однако некоторые «заядлые» программисты, как правило, говорят, что нужно писать как можно дальше, чтобы в будущем люди могли легко читать и изменять код.
Например, если вы напишете
int a = b<c ? b : c;
Некоторые люди утверждают, что проще написать:
if(b<c)
a = b;
else
a = c;
Потому что в будущем люди могут это поймать. Конечно, простой b