问题列表 - 第17654页

Objective-C中保留的关键字?

在昨天的CocoaHeadsÖresund会议上,peylow构建了一个很棒的ObjC测验.竞争非常激烈,当评估最后一个问题时,有三个人留下相同的分数:Objective-C有多少保留关键字加到C?

随后进行了一些激烈的辩论.所有人都认为@interface,@implementation等等都是预处理器指令而不是关键字,但是怎么样in?它可能是一个关键字,但它不是保留关键字.例如,以下将编译没有错误或警告:

NSArray* in;
for (in in in)
   NSLog(@"bwahahaa");
Run Code Online (Sandbox Code Playgroud)

我们的结论是,ObjC 没有为C 添加保留关键字,有人赢得了一本看似很好的书.

但今天我通过尝试这样的事情尝试了一些更系统的滥用编译器:

int self = 45;
self++;
int y = self;
Run Code Online (Sandbox Code Playgroud)

这编译罚款,而相同的代码工作替换为自己BOOL, bycopy, inout, oneway, byref, SEL,IMP.

使用id变量名称,第一行和最后一行编译,但不是第二行.同样的Protocol,和Class.

使用super,第一行编译,但不是第二行和第三行.

随着YES,NONULL所有三线无法编译,可能是因为他们只是被定义为true,falsenil.

在我看来,很多这就是gcc变得困惑,我不太确定它反映的是什么是Objective-C中的保留关键字.例如,为什么可以将其self用作int的名称,但不是super吗?

第一个赋值始终有效(除了带有YES,NO和NULL)这一事实似乎支持这样一种观点,即没有一个候选是C中没有的技术上保留的关键字.或者?

有人可以给我们一个关于这个棘手问题的权威解释吗?

几个人的荣誉受到威胁.

编辑:正如Nikolai Ruhe指出的那样,我们需要明确定义"关键字"才能继续.Niko引用维基百科的一篇文章称关键词是"具有特定含义的词或标识符".

我认为从同一篇文章中使用这个定义是合理的:

在许多语言中,例如C和类似C++的环境,关键字是一个标识语法形式的保留字.控制流构造中使用的单词,例如if,then和else是关键字.在这些语言中,关键字也不能用作变量或函数的名称.

此外,正如文章所述:

通常,当程序员尝试使用关键字作为变量或函数名称时,将触发编译错误. …

compiler-construction grammar gcc objective-c keyword

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

SQL Server可选连接

我有几张桌子(确切地说,7张)我互相交叉的桌子.这部分给我一些问题;

表"行动"

 -----------------------------------------
| ID | Package ID | Action Type | Message |
 -----------------------------------------
| 40 | 100340     | 0           | OK      |
| 41 | 100340     | 12          | Error   |
| 42 | 100340     | 2           | OK      |

| 43 | 100341     | 4           | OK      |
| 44 | 100341     | 0           | Error   |
| 45 | 100341     | 12          | OK      |
 -----------------------------------------
Run Code Online (Sandbox Code Playgroud)

表"包"

 ----------------------
| ID     | Name        |
 ----------------------
| 100340 …
Run Code Online (Sandbox Code Playgroud)

sql sql-server join

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

将所有br标签转换为一个通用<br />

需要一个简单的preg_replace来转换<br> <br/>所有可能的br组合<br />.

这需要按顺序工作,所以我可以处理一个字符串,即: $output = preg_replace('', '<br />', $input)

感谢大家!

php preg-replace

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

.NET/Windows窗体:记住窗口大小和位置

我有一个带有普通窗口的Windows窗体应用程序.现在,当我关闭应用程序并重新启动它时,我希望主窗口出现在屏幕上的同一位置,其大小与关闭时的大小相同.

在Windows窗体中是否有一种简单的方法可以记住屏幕位置和窗口大小(如果可能的话,窗口状态)或者是否必须手动完成所有操作?

.net c# window winforms

40
推荐指数
4
解决办法
5万
查看次数

字符串转换

s ='这是样本'

我需要像这样转换

s='"This is sample"'
Run Code Online (Sandbox Code Playgroud)

输出="This is sample"

如何在动态
中做到这一点,提前谢谢

python string

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

string.Compare行为

怎么会这样?(这取自VS2008中的即时窗口)

?string.Compare("-", "+")
-1
?string.Compare("-0", "+0")
1
Run Code Online (Sandbox Code Playgroud)

.net string localization string-comparison

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

更改标签栏高度时出现问题

我想改变Tabbar的高度.

代码是:

    rootController.tabBar.frame= CGRectMake(0,450,320,30);
Run Code Online (Sandbox Code Playgroud)

rootController是TabBarController对象.

在调整标签栏大小后,我在视图和标签栏之间获得了空格.

然后它没有用来调整它的大小.如何正确调整大小以便消除myview和tabbar之间的空间?

| -------------------- |
|
|
|
|
|
| ........................ |在视图和我的tabbar空间之间保持不变
| ............... ......... |
| view1 | view2 |
| -------------------- |

有什么解决方案吗?提前致谢 ...

iphone uitabbar

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

可以将jquery和javascript共存于一个文件中吗?

我可以在页面中使用javascript和jquery吗?

喜欢:

<script type="text/javascript">

 $(document).ready(function(){
//some jquery 
});

function xyz(){

//javascript statements

//some jquery statements

}

</script>
Run Code Online (Sandbox Code Playgroud)

javascript jquery

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

一旦数据在服务器上可用,就在网页上显示结果

我正在用Python编写一个cgi页面.假设客户端向我的cgi页面发送请求.我的cgi页面进行计算,一旦它有第一个输出,它就会将该输出发送回客户端,但它会继续进行计算并在发送第一个响应发送其他响应.

我在这里介绍的可能吗?我问这个问题是因为在我有限的知识中,在cgi页面中,响应是一次性发回的,一旦发送响应,cgi-page就会停止运行.这件事是在服务器端或客户端进行的,我该如何实现呢?

我的服务器正在运行Apache.非常感谢你.

我在这个论坛中尝试过"dbr"的客户端代码(感谢他,我知道了多长时间的轮询工作).

<html>
<head>
    <title>BargePoller</title>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js" type="text/javascript" charset="utf-8"></script>

    <style type="text/css" media="screen">
      body{ background:#000;color:#fff;font-size:.9em; }
      .msg{ background:#aaa;padding:.2em; border-bottom:1px #000 solid}
      .old{ background-color:#246499;}
      .new{ background-color:#3B9957;}
    .error{ background-color:#992E36;}
    </style>

    <script type="text/javascript" charset="utf-8">
    function addmsg(type, msg){
        /* Simple helper to add a div.
        type is the name of a CSS class (old/new/error).
        msg is the contents of the div */
        $("#messages").append(
            "<div class='msg "+ type +"'>"+ msg +"</div>"
        );
    }

    function waitForMsg(){
        /* This requests the url …
Run Code Online (Sandbox Code Playgroud)

python cgi

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

WCF:没有设置公开只读DataMember属性?

我有一个服务器端类,我通过[DataContract]在客户端提供.这个类有一个readonly字段,我想通过一个属性提供.但是,我无法这样做,因为似乎我不允许在没有get和set的情况下添加[DataMember]属性.

那么 - 有没有一种方法可以在没有setter的情况下拥有[DataMember]属性?

[DataContract]
class SomeClass
{
    private readonly int _id; 

    public SomeClass() { .. }

    [DataMember]
    public int Id { get { return _id; } }        

    [DataMember]
    public string SomeString { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

或将溶液中使用[数据成员]作为字段- (例如像显示在这里)?尝试这样做,但它似乎并不关心该领域是readonly ..?

编辑:这是通过黑客攻击这样做的唯一方法来制作一个只读属性吗?(不 - 我不想这样做......)

[DataMember]
public int Id
{
    get { return _id; }
    private set { /* NOOP */ }
}
Run Code Online (Sandbox Code Playgroud)

.net wcf readonly datacontract datamember

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