草庐IT

accessors

全部标签

c++ - 简单的 getter/accessor 防止矢量化 - gcc 错误?

考虑这个固定vector的最小实现:constexprstd::size_tcapacity=1000;structvec{intvalues[capacity];std::size_t_size=0;std::size_tsize()constnoexcept{return_size;}voidpush(intx){values[size()]=x;++_size;}};给定以下测试用例:vecv;for(std::size_ti{0};i!=capacity;++i){v.push(i);}asmvolatile(""::"g"(&v):"memory");编译器生成非向量化程序集

java - 带有 JAXB Random ClassCastException .. 的 Netbeans 无法转换为 com.sun.xml.bind.v2.runtime.reflect.Accessor

我已经从SOAP服务下载了Soap消息,并尝试通过返回下载的消息来模拟Soap服务。以下代码显示了我如何将Soap消息解码为所需的响应publicstaticDataClientTypeunmarshallFile(StringfileName)throwsException{XMLInputFactoryxif=XMLInputFactory.newFactory();XMLStreamReaderxsr=xif.createXMLStreamReader(ClientSampleSoapResponseData.class.getResourceAsStream(fileName)

Ruby 私有(private) attr_accessor 和意外的 nil

当我经常使用Ruby时,我有一个坏习惯,就是将所有内容都公开并忽略隐私。不幸的是,这种无知又回来困扰着我。这是我的问题的一个更简单的版本:classSomethingprivateattr_accessor:sneakypublicdefinitialize@sneaky=0enddeftestwhilesneaky这会打印sneaky的正确值(0),然后在sneaky=(sneaky+1)处出错,说sneaky是nil:0test.rb:13:in`test':undefinedmethod`+'fornil:NilClass(NoMethodError)fromtest.rb:19

ruby-on-rails - 如何覆盖模块中的 attr_accessor getter?

moduleHasUrlextendActiveSupport::Concernincludeddoattr_accessor:barenddefbar0endendclassFoobar属性不存储在数据库中,但在表单中使用(使用SimpleForm的f.input)。我想覆盖此方法的getter,以便我可以根据其他属性设置bar并让表单正确地预填充值。问题是在这样的包含block中使用attr_accessor会在Foo类上设置getter。因为该模块包含在祖先链中的Foo之上,所以永远不会触及返回0的自定义bar方法。解决这个问题的一种方法是classFoo但我想避免这个额外的步骤

ruby-on-rails - Rails/Ruby - 如何检查 attr_accessor 字段是否存在?

在Rails3/4模型中,如果使用attr_accessor声明字段field1:attr_accessor:field1如何后期检查模型中是否存在field1?。column_exists?和method_defined?似乎只适用于模型列,field1不是模型列。 最佳答案 attr_accessor定义了两个方法:deffield1和deffield1=(val),因此您最多只能检查是否存在这两个函数。如果你有一个对象:object.respond_to?:field1object.respond_to?:field1=如果不

ruby - attr_accessor 创建的方法对子类不可用

http://gist.github.com/172341(stackoverflow破坏了格式)在以下情况下,Human创建的方法名称对Boy不可用。我的理解是否正确,attr_accessor方法不是可用于子类。我需要使用父类(superclass)来访问attr_accessor添加的方法。 最佳答案 您正在寻找的是cattr_accessor,它可以解决这个特定问题:http://apidock.com/rails/Class/cattr_accessor这是您的示例,已修复:classHumandefself.age@ag

ruby-on-rails - 为什么使用 cattr_accessor(JRuby、Rails)重新初始化我的类变量

好吧,我知道这有点怪诞,但我正在运行JRubyonRails,而且我对两者都比较陌生。我看到一些我无法理解的行为,我想知道是我做错了什么还是我的堆栈有问题。基本问题是我的类属性似乎正在重新初始化,这是我不希望发生的事情。这基本上是我的代码classMyController问题在于每次调用init_an_attr时,if条件的计算结果为真,我最终重新分配@@an_attr。这是预期的行为吗?如果可以,您能解释一下原因吗,因为对我来说,作业应该只发生一次。 最佳答案 在Rails中,当以开发模式运行时,类不会被缓存。MyControll

ruby - ruby attr_accessor 的奇怪行为

我有这段代码:classCallMeattr_accessor:a,:b,:cdefself.start(*args)self.new(*args).get_answerenddefinitialize(a,b,c)@a=a@b=b@c=cenddefget_answerifcb=nilelsereturnbendendendanswer=CallMe.start(1,2,nil)为什么当我在irb中运行它时,我总是得到answer=nil即使逻辑情况是得到b值为2 最佳答案 VariableHoisting效果在许多语言中使用。对

ruby-on-rails - 访问使用 attr_accessor 创建的变量

我想了解attr_accessor给我的访问权限。据我了解,它提供了getter和setter方法。所以attr_accessor:color它将为我创建如下内容defcolor@colorenddefcolor=(value)@color=valueend我不明白的是为什么在下面的代码中,为什么我不能在初始化程序中使用color=?(它最终是空白的)。为什么我需要使用@color=或self.color=来代替?color=不应该是一种调用上面刚刚为我创建的setter方法的方法吗?classBirdattr_accessor:colordefinitialize(c="green"

使用 attr_accessor 和初始化方法的 Ruby 类

致力于用Ruby制作一个小的命令行脚本,其中用户提供一些与餐厅相关的信息,以及返回计算的信息。目前我有以下代码:classRestaurantattr_accessor:name:type:avg_pricedefinitialize(name,type,avg_price)@name=name@type=type@avg_price=priceendend问题一如果我们使用attr_accessors声明方法type,和price,和name为什么Initialize方法是必要的?这是因为我们需要设置给它输入值?问题2有一个子类叫做RestaurantList其次是在代码中。这是什么