Вот Универсальный сериализатор (C#):
public string SerializeObject<T>(T objectToSerialize)
{
BinaryFormatter bf = new BinaryFormatter();
MemoryStream memStr = new MemoryStream();
try
{
bf.Serialize(memStr, objectToSerialize);
memStr.Position = 0;
return Convert.ToBase64String(memStr.ToArray());
}
finally
{
memStr.Close();
}
}
В Вашем случае Вы могли звонить с:
SerializeObject<List<string>>(matrix);
Although many people think of it as a Java IDE, he could try NetBeans. I've used it on Windows for C and C++ development without a problem, and I know NetBeans is supported on Linux, so it would be worth a shot.
It looks like most of the features he wants are included in the C/C++ development toolkit, including integration with GDB, a profiler, and more.
Visual Studio is good, indeed.
On the free side:
Qt Creator is getting quite good too, it's worth a try. There are advantageous by-products coming from the Qt framework:
A version 1.3 beta is available as a preview of the upcoming release but the current 1.2.1 is already all you need to manage projects.
Eclipse has already been mentioned, it's a very good environment offering many plug-ins (Mylyn, SVN, ...).
MonoDevelop somewhat supports C++ (more and more, I didn't check the latest version).
I've used Eclipse for C/C++ and it's pretty useful. It's also used at ACM ICPC World Finals http://cm.baylor.edu/welcome.icpc
I'd recommand Code::Blocks (but use a nighty build). It can be coupled with gdb to enable step by step debugging and all that stuff.
Я не исследовал это лично, но у Emacs есть надстройка для разработки на C ++, которая очень похожа на полноценную IDE.
About 7 years ago I used KDevelop that was shipped with KDE. I found it quite good back than, and I hope it also improved with the time. I found it quite comparable to VC++ 6 at this time.
It also contains Qt support, if you are in need for some GUI toolkit.
Depends, Code::Blocks is good, Eclipse is very nice too, but you will need a very good computer. In my opinion the best choice iss gcc, gdb and ViM or Gedit.
Мои приятели по работе используют Eclipse + Scons, они также используют Valgrind (орфография?) Для отслеживания утечек памяти и тому подобного.
Многие из перечисленных вами функций IDE были функциями отладчика. Отладчик ddd (Data Display Debugger) - это довольно хорошая оболочка с графическим интерфейсом для gdb, позволяющая графическое представление структур данных, не дрянное окно со списком источников (то есть в отличие от команды l gdb, где вы не получаете контекст) и также позволяет при желании напрямую использовать любые собственные команды gdb.
Посмотрите на CodeLite. Он доступен для Ubuntu и Fedora из коробки и даже для Windows и Mac. Так что вы можете иметь одну и ту же IDE на разных платформах.
Мы пробовали Eclipse и NetBeans, но оставили их из-за огромного потребления процессора и памяти. У нас есть сервер разработки, и все разработчики подключаются к нему через RDC. Поэтому в нашей модели эти IDE потерпели неудачу.
Поэтому мы искали какую-нибудь родную IDE. Нашли CodeBlocks, который оказался очень хорошим и быстрым. Мы вроде как остановились на нем, но позже нашли CodeLite, и он понравился нам больше, чем CodeBlocks.