angelbob-
Which would you consider cleaner?
----------------------------------------
class IntObject
{
IntObject &operator +=(int val)
{_val += val; return *this;}
operator int( )
{return _val;}
int _val;
};
IntObject i;
int v = i += 3;
-------------------------------
Or?
struct IntObject
{int _val;};
IntObject *PlusEqual( IntObject *i, int val)
{i->_val += val;}
int Value( IntObject *i)
{return i->_val;}
IntObject i;
int v = Value(PlusEqual(&i, 3));
----------------------------------
To me, the C++ version (first version) is a lot cleaner and more intuitive.
I'd have to say that the design details of a program determine which language produces cleaner code (mainly whether the problem is more naturally described as objects (C++), or proceedures ©).
In the case of a MUD, the design is CLEARLY object-oriented (Server, Connection, Player, Character, Object, Room, Area). Thus, using a language that has object-oriented capabilities would most likely produce the cleanest code.
I'm guessing that you confused the cleanliness of a piece of code with complexity of a language.
|