> (to be fair RAII wasn't a thing in 'normal' C++ at the time either)
RAII in C++ dates back to 1984-1989, and Strousop wrote about it in his 1994 book Design and Evolution of C++. And C++98 had auto_ptr<>. Symbian's release in 1997 means it had a weird timing relationship with C++ standardization, but RAII was still enough of a thing at the time to be in that very first standardized STL release.
No std::string
Custom exceptions (no explicit try...catch, I think only ints could be 'thrown')
2-phase construction for C-classes.
Explicit lifetime management (to be fair RAII wasn't a thing in 'normal' C++ at the time either)
Link by ordinal
One interesting thing was that there were mandated, and strictly enforced, naming conventions and coding style. For example, above I mentioned C-classes. You had to use these in certain circumstances by inheriting from a CBase class. This gave you a virtual destructor and zero-initialised the memory. R-classes were resources classes mainly for things that needed Open and Close functionality.
I joined straight out of university and probably learned more about softare development in my first 6 months at Symbian than in 4 years of uni. There were some incredibly clever people there.