Когда вы ставите перед идентификатором (например, именем типа) значение @
, вы сообщаете компилятору, что, хотя оно выглядит как зарезервированное слово, оно относится к чему-то определенному в вашей программе.
Если у вас не определено что-то вроде
public class @bool
{
...
}
, это не сработает.
Попробуйте
public virtual bool ShowRecentPlans {
get {
return (bool)(this.GetPropertyValue("ShowRecentPlans"));
}
}
Например, если вы хотите использоватьключевое слово new
в качестве идентификатора, вы можете:
int new = 5; /// error!
int @new = 5; /// compiles
@
, конечно, также используется для указания компилятору, как должна интерпретироваться строка.
// throws an error because \p and \m look like formatting sequences
var path = "c:\pub\myFile.txt";
// compiles
var path = @"c:\pub\myFile.txt";
ТакжеЯ просто должен спросить: что заставило вас использовать @bool
вместо bool
для начала?
(И, для записи, использование ключевого слова в качестве идентификатора - очень, очень плохая идея.)