экстерн "C" используется, чтобы сказать, что функция C++ должна иметь связь C. То, что это означает, является иждивенцем реализации, но обычно это выключает искажение имени C++ (и таким образом перегружаясь и строгую проверку типа). Вы используете его, когда у Вас есть функция C++, Вы хотите позвониться от кода C:
extern "C" void Foo(); // can be called easily from C
Что касается экстерна "C++", я никогда не видел его в реальном коде, хотя Стандарт C++ позволяет его. Я предполагаю, что это нет.
Я надеюсь , что они еще не живы.
Вероятно, мы использовали их неправильно, так что, вероятно, это наша собственная ошибка, но они вызвали у нас огромные проблемы, когда мы хотели обновить только часть нашего сайта. Предполагаемые преимущества использования проектов развертывания веб-сайтов никогда не окупались для нас и просто вызывали больше проблем, чем они того стоили.
Править
Drats. Они все еще живы.
Я не знаю о проектах веб-развертывания, но вот кое-что определенно живое: Средство веб-развертывания (MS Deploy) .
Я предполагаю, что они упаковывают это в Visual Studio 2010. См. http://blogs.msdn.com/webdevtools/archive/2009/06/28/vs2010-beta1-web-application-project-database-package-and-smo-options.aspx
Второй Дэвид Стрэттон - это определение половины запеченный. Хорошие идеи, завернутые в плохое исполнение, лучшее, что я могу сказать о них, это то, что они не являются InstallShield.
Ответ от Microsoft:
Проекты веб-развертывания не в настоящее время планируется стать частью VS 2010 ... Поскольку WDP выходит за рамки диапазона, мы еще не начали планировать его, поскольку команда сосредоточена на работе над VS 2010 на данный момент ...
Похоже, они определенно сместили акцент на msdeploy и "веб-пакеты".
Проекты веб-развертывания Visual Studio® 2010 - RTW
Проекты веб-развертывания будут продвигаться в VS2010 - и это хорошая новость, поскольку веб-пакеты не поддерживают проекты веб-сайтов