Kürzlich bat mich ein Freund, den ich aus keinerlei Programmiererkreisen kenne, ihm beim C ++ - Labor zu helfen. Der Code war ungefähr so:
void do_something(MyObj *input[], int count)
{
MyObj **copy = new MyObj*[count];
for (int i = 0; i < count; ++i)
*copy[i] = *input[i];
...
}
, , — , «» , , , . , , — .
, , :
?
, C/C++, .
. , « », . , :
- = , .
- = , = , , .
- = , = , , = , , , .
, — — C/C++ :
- MyClass* = MyClass.
- MyClass** = MyClass* = MyClass.
- MyClass*** = MyClass** = MyClass* = MyClass.
, .
, (= , , ) . , — .
, : «» «» , «», , .
C/C++: , « T», «T*», ( ), , , , T (, , T&, lvalue ). ( ) ,
- *(T*) === T,
- *(T**) === T*,
- **(T**) === T,
- *(T***) === T**,
- .
? . , - C/C++ . , — … .