Ондық арасындағы айырмашылық неде? және ондық сан

Мен бұл ASP.NET MVC 4-ді зерттеуге тырысып жатқандығын білемін және жақында күмәнмен кездестім. MVC-ді оқу үшін пайдаланатын оқулық MVC Моделін жасау келесі кодты қамтиды

public decimal? cost{get;set;}

және мен неге олар қойды деп ойлаймын? кодта оқулық неге олар мұны түсіндірмеді? кодта. Менің сұрағым ондық және ондық арасындағы айырмашылық неде?

1

7 жауаптар

decimal? can have null value

ал decimal мәні null болмауы керек, ол әрқашан мәнге ие болуы керек

more about nullable types on http://msdn.microsoft.com/en-us/library/1t3y8s4s(v=vs.80).aspx

келесі мысалға қараңыз

decimal? foo = null;//value is null
foo = 5.5M; //value is 5.5
foo = null;//value is null again

сіз бұл әрекетті null түрі түрінде жасай алмайсыз

decimal foo = null;//produces compiler error, Cannot convert null to 'decimal'
4
қосылды

VS 2005-де біз жаңа типті «Nullable» деп енгізіп жатырмыз, ол осындай нәрсеге ұқсас (бұл шын мәнінде одан да күрделі, бірақ мен мысалды қарапайым сақтауды қалаймын):

struct Nullable
{
    public bool HasValue;
    public T Value;
} 

Сіз бұл құрылымды тікелей пайдалана аласыз, бірақ нәтижесінде алынған кодты әлдеқайда таза ету үшін кейбір сілтемелер синтаксисін қосамыз. Біріншісі - nullable түрін жариялауға арналған жаңа синтаксисті енгізу. Терудің орнына:

Nullable x = new Nullable(125); I can write:

int? x = 125;

You can read this in detail here

1
қосылды
Сілтемеден көшірудің орнына сіз өзіңіздің сипаттамаңызды жазуыңыз керек. Visual Studio бағдарламасының 8 жасар нұсқасында жаңа нәрсе енгізілгенін оқығанда, мен біраз уақыт шатастырдым.
қосылды автор Robert Rouhani, көзі

VS 2005-де біз жаңа типті «Nullable» деп енгізіп жатырмыз, ол осындай нәрсеге ұқсас (бұл шын мәнінде одан да күрделі, бірақ мен мысалды қарапайым сақтауды қалаймын):

struct Nullable
{
    public bool HasValue;
    public T Value;
} 

Сіз бұл құрылымды тікелей пайдалана аласыз, бірақ нәтижесінде алынған кодты әлдеқайда таза ету үшін кейбір сілтемелер синтаксисін қосамыз. Біріншісі - nullable түрін жариялауға арналған жаңа синтаксисті енгізу. Терудің орнына:

Nullable x = new Nullable(125); I can write:

int? x = 125;

You can read this in detail here

1
қосылды
Сілтемеден көшірудің орнына сіз өзіңіздің сипаттамаңызды жазуыңыз керек. Visual Studio бағдарламасының 8 жасар нұсқасында жаңа нәрсе енгізілгенін оқығанда, мен біраз уақыт шатастырдым.
қосылды автор Robert Rouhani, көзі

ондық сан ist nullable, яғни ешқандай мән болмауы керек (null not 0). Сіз, мысалы, оны клиентіңізге жіберіңіз және «0» орнына «деректер жоқ» мәтінін көрсетіңіз.

0
қосылды

ондық сан ist nullable, яғни ешқандай мән болмауы керек (null not 0). Сіз, мысалы, оны клиентіңізге жіберіңіз және «0» орнына «деректер жоқ» мәтінін көрсетіңіз.

0
қосылды

decimal is a value type. Adding the question mark makes it Nullable. http://msdn.microsoft.com/en-us/library/1t3y8s4s%28VS.80%29.aspx

0
қосылды

decimal is a value type. Adding the question mark makes it Nullable. http://msdn.microsoft.com/en-us/library/1t3y8s4s%28VS.80%29.aspx

0
қосылды