ice这个垃圾,谁用过啊?
找了无数篇文章,照着操作,死活挂了,
std::bad_alloc
后来又发现一篇博客,博客里提到官网那个2b文档也是错误的。
所以博主更正了一下,给了个demo.
照着博主说的,还是错误。
实在受不了。
- C/C++ code
int main(int argc, char* argv[]){ int status = 0; Ice::CommunicatorPtr ic; try { ic = Ice::initialize(argc, argv); Ice::ObjectAdapterPtr adapter= ic->createObjectAdapterWithEndpoints("SimplePrinterAdapter", "default -p 10000"); Ice::ObjectPtr object = new PrinterI; adapter->add(object,ic->stringToIdentity("SimplePrinter")); //如果您按网上盛传的文章写成adapter->add(object,ICE::stringToIdentity("SimplePrinter"));您就死翘翘了 //就这个问题缠了我3天,后来发现官方文档是ic->stringToIdentity("SimplePrinter"),总算解围了,否则还得死绕 //本想偷懒不看英文,只看马维达的翻译或网上的文章,他们的代码与官方文档代码就这一句不同,不仔细看根本发现不了,想想懒没偷成更费一身汗。 //话又说回来,官方文档也有陷阱,纯看文档同样死得难看。 //坑人啊…… adapter->activate(); ic->waitForShutdown(); } catch (const Ice::Exception& e) { cerr << e << endl; status = 1; } catch (const char* msg) { cerr << msg << endl; status = 1; } if (ic) { try { ic->destroy(); } catch (const Ice::Exception& e) { cerr << e << endl; status = 1; } } return status;}
Ice::ObjectAdapterPtr adapter= ic->createObjectAdapterWithEndpoints("SimplePrinterAdapter", "default -p 9585");
这一句就错误哦了。。。
[解决办法]
没人用过就赶紧结贴吧,免得人多了
[解决办法]
没人用过就赶紧结贴吧,免得人多了
[解决办法]
ICE 不是提供了相应的DEMO吗? 按DEMO来就可以了。
[解决办法]
其实,我是路过的,不过,那个 Demo 我真的跑起来过,记不太清了,好像是要有个什么步骤,很遗憾,记不得了,