小编Ani*_*dha的帖子

为什么人们认为创建C++的唯一人是Bjarne Stroustrup?

我目前正在阅读Stroustrup的书"C++的设计和演变",结果发现他不是开发C++的人.
当我听到有人说"Bjarne Stroustrup开发C++ blah-blah-blah"时,我总觉得这对那些与BS合作的人非常不公平 - 我的意思是Jonathan Shopiro,Andrew Koenig,Stan Lippman,Stefan Dewhurst等人.为什么会那样?甚至维基百科都没有提到他的团队 - 只有他这是怎么回事?
编辑:
当人们说C#时,他们并不仅仅意味着Anders Hejlsberg,有一个开发团队正在研究C#和.NET Framework.可能是因为C++不属于任何软件巨头公司,如Java到Oracle或C#对微软?

c++ programming-languages

7
推荐指数
2
解决办法
2368
查看次数

为什么在switch case语句中只允许有限的类型

像语言Java,c++,c,c#允许integral型或计算结果为整数类型中的switch-case语句的表达式.[ string文字和一些其他类型的允许在某些语言]

为什么我们只需要使用integral类型或有限数量的类型而不是类型double,float?是因为某种优化还是仅仅为了简单

c# c++ java switch-statement

7
推荐指数
2
解决办法
4419
查看次数

使用Character vs char数组初始化

这打印错误

List vowelsList=Arrays.asList(new char[]{'a','e','i','o','u'});
System.out.println(vowelsList.contains('a'));//false
Run Code Online (Sandbox Code Playgroud)

这打印是真的

List vowelsList=Arrays.asList(new Character[]{'a','e','i','o','u'});
System.out.println(vowelsList.contains('a'));//true
Run Code Online (Sandbox Code Playgroud)

charCharacter我在char数组initailizer中使用的自动装箱.为什么我得到不同的结果!

java autoboxing

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

CIL是汇编语言而JIT是汇编语言

我们知道Common Intermediate Language (CIL)或者(MSIL)面向对象的汇编语言.

但Just In Time Compiler是否(JIT)真的将每条指令映射到底层处理器opcodes

如果是这样,我们可以将CIL称为汇编语言,将JIT称为汇编程序

注意:Wikipedia不会在其汇编语言列表中将CIL列为汇编语言

.net c# assembly cil

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

需要在Javascript中创建正则表达式来检查有效的条件字符串

我想在javascript中创建正则表达式,它将检查有效的条件字符串,如

-1 OR (1 AND 2) AND 1

-1 OR (1 AND 2)

-1 OR 2

-1 OR 1 OR 1

-1 AND 1 AND 1
Run Code Online (Sandbox Code Playgroud)

该字符串不应包含"AND"和"OR".例如 - 1 OR 2 AND 3无效.- 它应该是(1或2)和31或(2和3).

我尝试了以下正则表达式.它适用于大多数情况,但未能检查上述情况.

/^(\s*\(\d+\s(AND|OR)\s\d+\)|\s*\d+)((\s*(AND|OR)\s*)(\(\d+\s(AND|OR)\s\d+\)|\s*\d+))*$/
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮我解决上述问题.

javascript regex

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

解决正则表达式递归字符串

问题

我可以匹配这个字符串

(xx)
Run Code Online (Sandbox Code Playgroud)

使用这个正则表达式

\([^()]*\)
Run Code Online (Sandbox Code Playgroud)

但它不匹配

(x(xx)x)
Run Code Online (Sandbox Code Playgroud)

所以,这个正则表达式会

\([^()]*\([^()]*\)[^()]*\)
Run Code Online (Sandbox Code Playgroud)

但是,这将无法匹配

(x(x(xx)x)x)
Run Code Online (Sandbox Code Playgroud)

但同样,这个新的正则表达式会

[^()]*\([^()]*\([^()]*\)[^()]*\)[^()]*
Run Code Online (Sandbox Code Playgroud)

在这里您可以注意到复制,第一个正则表达式的第一个正则表达式模式\(在第一个\)复制之后和最后一个复制之前并替换最中心[^()]*.当然,这最后一个正则表达式是不匹配的

(x(x(x(xx)x)x)x)
Run Code Online (Sandbox Code Playgroud)

但是,您可以随时复制替换中心[^()]*,[^()]*\([^()]*\)[^()]*就像我们为最后一个正则表达式所做的那样,并且它将捕获更多(xx)组.您添加到正则表达式的次数越多,它处理的越多,但它总是会受限于您添加的数量.

那么,你如何解决这个限制并捕获一组括号内的括号(或任何两个字符),其中可以包含额外的组?

错误地假设解决方案

我知道你可能会考虑使用

\(.*\)
Run Code Online (Sandbox Code Playgroud)

但这将匹配所有

(xx)xx)
Run Code Online (Sandbox Code Playgroud)

什么时候它应该只匹配子串(xx).

即使这样

\([^)]*\)
Run Code Online (Sandbox Code Playgroud)

不会匹配具有嵌套对的括号对

(xx(xx)xx)
Run Code Online (Sandbox Code Playgroud)

从这一点来说,它只会匹配(xx(xx).

可能吗?

那么可以编写一个可以匹配括号组的正则表达式吗?或者这是必须由例程处理的事情吗?

编辑

该解决方案必须适用于正则表达式的JavaScript实现

javascript regex recursion

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

lang 属性与元标记 charset 属性

w3c 指出lang属性的使用为

协助搜索引擎

辅助语音合成器

帮助用户代理选择高质量排版的字形变体

帮助用户代理选择一组引号

帮助用户代理做出有关连字符、连字和间距的决定

协助拼写检查和语法检查

但我发现除了对文档进行编码之外,标签charset的属性没有任何用处meta

确实charset提供与属性相同的功能,lang例如辅助语音合成器、搜索引擎.......

html character-encoding web

5
推荐指数
2
解决办法
4153
查看次数

正则表达式仅用于验证数字和点

我想要一个只接受数字和点的java正则表达式.

例如,

             1.1.1 ----valid
             1.1   ----valid
             1.1.1.1---valid
             1.    ----not valid
Run Code Online (Sandbox Code Playgroud)

点不应位于起始位置或结束位置.

java regex

5
推荐指数
2
解决办法
3万
查看次数

是否有可能比C中的同一程序(优化)更快地获得Java程序?

关于在编译时生成C/C++优化的事实,并且在运行时生成Java优化.是否有可能比C中的同一程序(优化)更快地获得Java程序?

我知道运行时优化可能比编译时更好.因此,我想知道这些优化的好处是否可以与运行JVM的开销进行比较.

c c++ java optimization

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

在Java中,'new Class [] {iface}'和'new Class <?> [] {iface}'是一样的

这两个语句在Java中是否相同?

//code 1
Object o1[] = new Class[] {iface};
//code 2
Object o2[] = new Class<?>[] {iface};
Run Code Online (Sandbox Code Playgroud)

java

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