Pergunta

I did an online assessment and I'm trying to understand the results, and here are a few of the questions I did already:

Get enum value from string

Change to method declaration

enter image description here

So the question is this:

I got this one partially right as well, after reading about the subject I would choose just option A and D, can you guys confirm?

Thanks a lot.

Marco

Foi útil?

Solução

An implicit conversion does not need a cast:

int a = 10;
long b = a;

An explicit conversion does need a cast:

long a = 10;
int b = (int)a;

To define (not invoke) an implicit conversion, the implicit keyword is used:

public static implicit operator MyOther(MyThis obj);

To define an explicit conversion, the explicit keyword is used:

public static explicit operator MyOther(MyThis obj);

Usually, explicit conversions are used when information might be lost through the conversion, or an exception may occur. For example, converting a 64-bit long integer to a 32-bit int integer might lose the 32 most-significant bits of information.

So, I am sure A is true, B, C and E are false. I don't understand the question for D. If they mean invoking the implicit conversion, then it is false. If they mean defining the implicit conversion, then it is true.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top