Я тут разбираюсь с темой конструкторов.
Например такой у нас есть структура Example в C++ коде:
struct Example
{
Example ( const int &i ) {}
};
И ее аналог в C# коде:
// struct - что бы работать со стуктурой в стеке, аналогично примеру с плюсами
struct Example
{
public Example ( System.Int32 i ){}
}
А теперь самое интересное:
C++ :
Example a ( 1 ) ; // Создаем обьект, вызываем конструктор
Example a = 1 ; // То же самое
C# :
Example a = new Example ( 1 ) ; // Создаем обьект и приравниваем его к Example (1)
То есть, не вызываем конструктор напрямую, а через извращенный синтаксис с new приравниваем наш обьект 'a' к обьекту возвращаемому конструкцией
new Example (1)
. По крайней мере я все понял именно так. Я правильно понял?
Если в плюсах все, что после объявления, даже с равно (=) - вызов конструктора, то в C# после объявления мы производим настоящее присваивание?