小编Ale*_*lex的帖子

目标C - 访问者,即Getters/Setters

我已经广泛阅读了已经发布的问题,并且找不到我正在寻找的答案.

我完全理解使用该@syntesize指令创建getter和setter方法的概念(即如果我有,@property int width并且@synthesize width,我无意中创建了getter方法width和setter方法setWidth:).

但是,当我没有使用该@synthesize指令但是在作为@implementation对象的部分中声明实例变量时,我并不完全理解存取器方法的工作原理.这是我对以下代码不了解的内容:

1)在main哪里说:

NSLog(@"Origin at (%i, %i)", myRect.origin1.x, myRect.origin1.y);
Run Code Online (Sandbox Code Playgroud)

在我看来,好像它将调用[[myRect origin1] x]首先确定[myRect origin1]返回的方法,origin然后立即调用[origin x](然后执行相同的操作y).现在,让我失望的是,如果我要更改getter方法的名称

-(XYpoint *) origin1;
Run Code Online (Sandbox Code Playgroud)

包含在Rectangle.h中

-(XYpoint *) origin2;
Run Code Online (Sandbox Code Playgroud)

程序得到大量错误并停止编译.注意:我还在所引用的任何地方更改了此方法的名称,包括将main中的前面的代码更改为

NSLog(@"Origin at (%i, %i)", myRect.origin2.x, myRect.origin2.y);
Run Code Online (Sandbox Code Playgroud)

但是,如果我还更改了setter方法的名称:

-(void) setOrigin1: (XYpoint *) pt
Run Code Online (Sandbox Code Playgroud)

至:

-(void) setOrigin2: (XYpoint *) pt
Run Code Online (Sandbox Code Playgroud)

然后一切都像以前一样有效.在我看来,只有当我的getter和setter都在x setX命名约定中命名时它才能正常工作.我认为这主要是我需要解释的:

A)如果我创建一个碰巧是对象的实例变量(在这种情况下就像'origin'),我必须为它创建getter和setter方法吗?

B)我可以创建一个getter方法但不能创建setter方法,反之亦然

C)如果我确实为'origin'创建了getter和setter方法,那么它们都必须以这种x setX方式命名.在这种情况下作为 …

objective-c

6
推荐指数
2
解决办法
3093
查看次数

如何用Python解决僵化的颂歌?

我是Python初学者。我正在尝试切换 matlab 中的一些程序。我需要求解一个刚性颂方程,其输入都是矩阵。在matlab中我使用

[ttT,uT] = ode23s('SST',t,fT);
Run Code Online (Sandbox Code Playgroud)

python matlab numpy scipy ode

5
推荐指数
1
解决办法
4476
查看次数

jquery对面的$(这个)

是否有可能执行相反的操作$(this)

因此,不是gettin this元素,它得到一切匹配.sb-popular-thumb a但排除$(this)

请参阅下面的示例代码.我已标记$(this),$(reverse)所以你可以看到我想要实现的目标.

$('.sb-popular-thumb a').hover(
  function () {

    $('.sb-popular').stop().animate({
        height : '168px'                    
    }, 200);

    $(this).siblings('.sb-popular-thumb-title').show();

    $(reverse).siblings('.sb-popular-thumb-overlay').stop().fadeIn(200);

  },
  function () {

    $('.sb-popular').stop().animate({
        height : '140px'                    
    }, 200);

    $(this).siblings('.sb-popular-thumb-title').hide();

    $(reverse).siblings('.sb-popular-thumb-overlay').stop().fadeOut(200);

});
Run Code Online (Sandbox Code Playgroud)

jquery

4
推荐指数
1
解决办法
2008
查看次数

rails中的日期字段和textinput

我有一个迁移:

  def change
    create_table :tasks do |t|
      t.date :date, :null => false
    end
  end
Run Code Online (Sandbox Code Playgroud)

并且观点:

<%= form_for @task do |f| %>
<%= f.text_field :date %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

问题是

  1. 对于已经在数据库中的记录,为什么我有"2011-12-23 00:00:00"而不是"2011-12-23"?在数据库中,它们采用"2011-12-23"格式.

  2. 如何内化日期,以便我可以有"12.23.11"之类的日期.

activerecord internationalization ruby-on-rails-3

3
推荐指数
1
解决办法
1103
查看次数

用PHP制作JSON并在我的jQuery成功案例中显示它的最佳方法?

我在jQuery中有这个代码:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.0/jquery.min.js"></script>

<script type="text/javascript" >
$(function() {
  $("input[type=submit]").click(function() {
    var name = $("#problem_name").val();
    var problem_blurb = $("#problem_blurb").val();

    var dataString = 'problem_name='+ name + '&problem_blurb=' + problem_blurb;

    if(name=='' || problem_blurb == '') {
      $('.success').fadeOut(200).hide();
      $('.error').fadeOut(200).show();
    }
    else {
      $.ajax({
        type: "POST",
        url: "/problems/add_problem.php",
        data: dataString,
        success: function() {
          $('.success').fadeIn(200).show();
          $('.error').fadeOut(200).hide();

          // Here can update the right side of the screen with the newly entered information
          alert (dataString);
        }
      });
    }

    return false;
  });
});
</script>
Run Code Online (Sandbox Code Playgroud)

我有一个AJAX调用,我想制作JSON,所以我可以在调用AJAX的成功案例中解压缩JSON.

我不明白的是如何创建JSON以及如何使前端检测它,以及如何解压缩并显示它.有什么建议吗?

我的后端回归很简单.只是返回的每个项目的名称和描述.

javascript php jquery json

1
推荐指数
1
解决办法
466
查看次数

使父div的子div匹配高度,并将填充应用于div中的边框

我有两个问题适用于我的网站.

请查看来源以帮助回答这两个问题.

  1. 我希望div"nav-cont-seperator"内的边框向下移动10px.我无法得到填充来解决这个问题,可能是因为边框忽略了填充.

  2. 我的第二个问题是,如何让垂直边框移到页面底部(使div匹配其父级的高度),减去10px?

css

1
推荐指数
1
解决办法
4303
查看次数

在javascript中将数组转换为字符串

我想要打印文本没有逗号.

<html>
<head>
<title>Reverse</title>
</head>
<body>
<form name="rev">
Enter the string : <input type="text" name="str"/>
<input type="button" value="click" onclick="rev1()" /><br>
reverse of given string : <input type="text" name="res"/>
</form>
<script type="text/JavaScript">
function rev1(){
var a=rev.str.value;
var b=[];
var i,j=0;
    for(i=a.length-1;i>=0;i--){
    b[j]=a[i];
    j++
}
//rev.res.value=b;
alert(b);
}
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

如果我输入输入,因为abc我得到输出c,b,a,但我想要它cba.

javascript

1
推荐指数
1
解决办法
1万
查看次数

删除指针

在C++中,推荐删除指针的方法是什么?例如,在下面的例子中,我是否需要所有三行来安全地删除指针(如果是这样,他们做了什么)?

// Create
MyClass* myObject;
myObject = new MyClass(myVarA, myVarB, myVarC);

// Use
// ...

// Delete
if(myObject) { 
    delete myObject; 
    myObject = NULL; 
}
Run Code Online (Sandbox Code Playgroud)

c++ pointers

0
推荐指数
1
解决办法
165
查看次数

为什么我的大型5D数组仅导致堆栈溢出异常作为成员变量?

我正在编写一个程序,我需要运行许多模拟,速度是游戏的名称.我目前正在使用在堆上分配的一个长线性数组并自己计算尺寸并直接从我编制的索引中提取.一位同事编写了一个类似的程序,并且使用5D阵列提高了速度.我知道将它作为向量分配会非常容易,但据我所知,由于边界检查使用向量会产生速度成本.

我的问题是为什么会发生这种情况?

这编译并运行良好:

int Array[20][20][20][20][20];

int main()
{
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

这会编译但在包装在类中时抛出堆栈溢出异常:

class Foo
{
  int Array[20][20][20][20][20];
};

int main()
{
  Foo foo;
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

我尝试在Visual Studio 2005链接器选项中修改我的堆栈大小以及更改"启用更大地址"选项,但似乎没有任何区别.

c++ stack-overflow arrays

0
推荐指数
1
解决办法
565
查看次数

展开公式?

在我通过训练练习学习红宝石的过程中,我遇到了一个额外的学分问题,基本上我想要打开这个公式:

what = add(age, subtract(height, multiply(weight, divide(iq, 2))))
Run Code Online (Sandbox Code Playgroud)

我的问题是我有点卡在这一部分.我理解的例子就是add(age, subtract这样age + subtract,但之后我就迷失了.

ruby

0
推荐指数
1
解决办法
134
查看次数

使用jQuery/JavaScript替换字符串的一部分

我有一个变量如下

var a = "Hi this is test. <img src='http://www.test.com/img1.jpg'> Test ends here";
Run Code Online (Sandbox Code Playgroud)

我想将src图像标记替换为其他图像网址http://www.test2.com/img2.jpg

所以输出应该是

var b = "Hi this is test. <img src='http://www.test2.com/img2.jpg'> Test ends here";
Run Code Online (Sandbox Code Playgroud)

图像路径都是动态的.

请帮忙.

javascript jquery

0
推荐指数
1
解决办法
1498
查看次数