eiffel相关内容
是否有一些库可以让我在 C++ 中轻松方便地创建面向对象的回调? 例如,Eiffel 语言具有“代理"的概念,其工作方式或多或少是这样的: class Foo{上市:酒吧*酒吧;富(){酒吧 = 新酒吧();bar->publisher.extend(agent say(?,"Hi from Foo!", ?));bar->invokeCallback();}说(字符串 strA,字符串
..
我有一个叫做MAP的类: class MAP [KEY,VAL] inherit ITERABLE [KEY] 我在返回的地图游标中实现了新游标 MAP_ITERATOR_CURSOR [KEY] 并将该可迭代游标传递给KEYS数组以迭代 我实现了MAP_ITERATOR_CURSOR [KEY]类 class MAP_ITERATOR_CURSO
..
我正在尝试使用 [CATCALL]类SQL_GENERATOR_TSQL65(SQL_GENERATOR,2610,5):类型 实际参数#1的"STRING_8"不符合类型"UC_STRING" 类"UC_STRING"中功能"is_equal"中形式参数的说明 以上错误指的是最后一行这段代码: sql_infix_expression (a_left: XPLAIN_EXP
..
我正在尝试编译项目(请参见我收到的错误消息是这样的: [CATCALL]类SQL_GENERATOR_TSQL65(ANY,95,8):实际参数#1的类型'STRING_8'与类'UC_STRING'中的功能'is_equal'中的形式参数的类型'UC_STRING'不符 这指向library\free_elks\src\elks\kernel\any.e: frozen
..
如何在Eiffel中设置引用另一个类常量的常量? 不幸的是,这样的事情不会编译 Default_log_level: like {MY_LOGGER}.log_level = {MY_LOGGER}.Log_level_info 解决方案 在当前版本的Eiffel中不能使用其他常量属性来定义常量属性.
..
在停止EWF应用并在已经使用的地址中再次启动它之后:c_bind Address already in use: IO_FAILURE raised 如此处所述,TCP套接字超时在操作系统释放之前似乎不可用 解决方案 我发现的最佳解决方法是 sudo sh -c 'echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle' 此答案的信用 我
..
我正在尝试使用Eiffel实现生产者-消费者问题的解决方案.我有一个类PRODUCER的数组p和一个类CONSUMER的数组c声明并初始化如下: local p:attached ARRAY[PRODUCER] c:attached ARRAY[CONSUMER] do !!p.make(1,5) !!c.mak
..
在埃菲尔铁塔中,您如何制作数字? 118.1999999999999 打印到: 118.20 换句话说,这只是printf的问题,但似乎没有办法在Eiffel中轻松地做到这一点. 解决方案 您应该使用FORMAT_DOUBLE类 local fd: FORMAT_DOUBLE do create fd.make (5, 3) print
..
我在Eiffel中找不到错误处理的任何实质性例子.我只发现了一些琐碎的示例,或者它们完全忽略了错误,或者将错误处理留给了读者.我很想知道在没有异常的情况下错误如何在调用堆栈中传播.例如,我想知道发送网络请求的应用程序如何将已在呼叫链中检测到的网络问题通知用户.这样的事情. - 编辑:我确实知道埃菲尔(Eiffel)中错误处理的基本知识(状态和异常).但是,我找不到任何有关应用程序如何通
..
如何确保元素在我的HASH_TABLE中,如果它是可分离的? Current = HASH_TABLE[ARRAYED_SET[G], G] add_edge (src: G; dst: G) do if attached Current.at(src) as edges then edges.put(dst) end ensure in: Curr
..
就像心理学中的双重约束一样,有没有办法告诉一个表达暗含另一表达呢? valid_last_error: attached last_error implies not attached last_success_message valid_last_success_message: attached last_success_message implies not attached last
..
我真的不理解,因为在我看来,类型一致性的基础知识.我在Eiffel Studio 19.5企业版的create {JANITZA_DEVICE} l_device.make_from_file_path (a_file_path)上有一个Creation instruction lists explicit creation type which does not conform to type
..
我正在尝试在Eiffel中创建一个不变的POINT类.下面的代码定义一个吗? x和y字段的{NONE}可访问性就足够了吗?我可以给类不变式写一些东西,如x = x',还是可以实现不变性? class POINT create make feature {NONE} x: DOUBLE y: DOUBLE feature
..
我的很多函数都在声明之下有一整堆验证代码: if(!(start<) ;结束)){ 抛出新的IllegalStateException(“Start必须在结束之前。”); } 我想精确指定某些输入的有效范围 - 例如a A> B,C => 1或str_d.length()> 0. 鉴于我的一些函数有很多参数,必须经过验证我最终可能会编写大量的锅炉板来
..
有没有一些库可以让我轻松方便地在c ++中创建面向对象的回调? 例如,埃菲尔语具有“代理”的概念更多或更少的工作如下: class Foo { public: Bar * bar; Foo(){ bar = new Bar(); bar-> publisher.extend(agent say(?,“Hi from Foo!”,?)); bar-> invoke
..