我听说有些人在一个项目中用多种语言编程.我无法想象语言如何相互作用.
我的意思是没有类似的Java方法
myProgram.callCfunction(parameters);
Run Code Online (Sandbox Code Playgroud)
永远不会发生或我错了吗?
问题更新而不是提出新问题......
我真的想在我建立的社交网站上提供除英语之外的一些替代语言,这将是我第一次进行任何语言翻译,所以请耐心等待.
我正在研究,所以我很感兴趣并且对这些想法持开放态度,我已经有了很多问题.
1)
i18n是什么意思,我在研究SO上的语言翻译时经常看到它?
2)
大多数人说使用gettext PHP有扩展或支持它,
我一直在研究它,我对它有一个基本的了解,据我所知,这条路线需要做很多额外的工作,
我意味着编码我的网站使用它的功能,即; _('你好世界我现在用英语')或者gettext('hello world我现在用英语')没问题,因为我去的任何路线都需要这样.
但是你必须在你的服务器上安装gettext并让它工作,
然后使用一些特殊的编辑器创建特殊的文件并编译它们我认为呢?
听起来很痛苦,我知道这应该是最好的路线,好像每个人都说是这样.
那么有人可以告诉我为什么这是要走的路线?
3)
我真的很喜欢这种方法的简单性,只需构建一个语言数组并在类似下面的例子的函数中调用你需要的短语,然后你就可以只包含一个带有相应语言数组的文件.
我真正想知道的是,与使用gettext相比,这对于高流量和相当大的网站来说是不是更好的性能方法吗?如果是这样,你能解释为什么好吗?
<?PHP
//Have seperate language files for each language I add, this would be english file
function lang($phrase){
static $lang = array(
'NO_PHOTO' => 'No photo\'s available',
'NEW_MEMBER' => 'This user is new'
);
return $lang[$phrase];
}
//Then in application where there is text from the site and not from users I would do something like this
echo …Run Code Online (Sandbox Code Playgroud) 如果您有5种以上的语言和100多个项目,IMO默认使用一个工作区是不可接受的,因为一个工作区变得非常混乱.拥有一个巨大的无组织工作空间会降低您的工作效率.
问题:
当您有5种以上的语言和100多个项目时,有哪些更高级的Eclipse使用方法?我真的很感激建议,不仅仅是给出一个句子,比如"使用多个工作空间"或"使用工作集".
"必须"要求:
"想要"要求:
(边注:
仅供参考,在SO.com上询问的原因之一是因为我已经在Google上搜索了足够多的人知道有很多人拥有相同的"帮助我的Eclipse工作区失控"问题.)
我的程序中有一个变量v,它可以从值集中获取任何值
"a", "b", "c", ..., "z"
Run Code Online (Sandbox Code Playgroud)
而我的目标是只有当执行一些说法v是不"x","y"或"z".
我试过了,
对于类C语言(其中相等运算符比较实际的字符串值;例如.c#,javascript,php)
if (v != "x" || v != "y" || v != "z")
{
// the statements I want to be executed
// if v is neither "x", nor "y", nor "z"
}
Run Code Online (Sandbox Code Playgroud)用于Pascal类语言(例如plsql)
IF (v != 'x' OR v != 'y' OR v != 'z') THEN
-- the statements …Run Code Online (Sandbox Code Playgroud)language-agnostic if-statement multiple-languages control-flow
我读了这个答案及其评论,我很好奇:有没有理由不使用this/ Self/ Me?
顺便说一句:如果之前有人询问过,我很抱歉,似乎无法this在SO上搜索这个词.
我想知道现代C++ 11相当于Java的实例.我已经看过这个SO帖子,但它已经很老了,并且想知道在C++ 11中是否有更现代,更好的解决方案?
我希望有可能使用switch结构而不必使用手动枚举类.
class A {
};
class B : public A {
}
class C : public A {
}
on_event(A& obj)
{
switch (obj) {
case A:
case B:
case C:
}
}
Run Code Online (Sandbox Code Playgroud)
我的基类没有任何虚拟方法或函数.我代表解析器的表达式树,基类只是一个多态持有者 - 就像Haskell/OCaml中的ADT一样.
我正在试验Haskell中的外部函数接口.我想实现一个简单的测试,看看我是否可以进行相互递归.所以,我创建了以下Haskell代码:
module MutualRecursion where
import Data.Int
foreign import ccall countdownC::Int32->IO ()
foreign export ccall countdownHaskell::Int32->IO()
countdownHaskell::Int32->IO()
countdownHaskell n = print n >> if n > 0 then countdownC (pred n) else return ()
Run Code Online (Sandbox Code Playgroud)
请注意,递归情况是对countdownC的调用,因此这应该是尾递归的.
在我的C代码中,我有
#include <stdio.h>
#include "MutualRecursionHaskell_stub.h"
void countdownC(int count)
{
printf("%d\n", count);
if(count > 0)
return countdownHaskell(count-1);
}
int main(int argc, char* argv[])
{
hs_init(&argc, &argv);
countdownHaskell(10000);
hs_exit();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这同样是尾递归.那我就做了
MutualRecursion: MutualRecursionHaskell_stub
ghc -O2 -no-hs-main MutualRecursionC.c MutualRecursionHaskell.o -o MutualRecursion
MutualRecursionHaskell_stub:
ghc -O2 -c MutualRecursionHaskell.hs
Run Code Online (Sandbox Code Playgroud)
并编译 …
c haskell multiple-languages tail-call-optimization mutual-recursion
我已经学习PHP几个月了,我也想学习JavaScript,因为我认为他们会为我喜欢的项目类型一起制作一套好的语言.
但是同时学习两种语言是明智的吗?您对此有何体验,您是否将每种语言的语法相互融合.
要添加问题,您知道多少种语言?
我将构建一个具有多语言支持的站点,我需要能够控制文章,公司和产品的工作流程.全部具有多语言支持和多版本控制.有没有人已经有解决方案,或者我需要从头开始?
database-design multiple-languages content-management-system
我以编程方式遵循Android N更改语言,从而在android N及更高版本中更改了我的应用程序的语言。但是,我仍然对应用程序上下文实例有疑问。
在我的应用程序类中:
private static Application mInstance;
public static Context getApplication() {
return mInstance;
}
@Override
public void onCreate() {
super.onCreate();
mInstance = this;
}
Run Code Online (Sandbox Code Playgroud)
语言已更改,但是从应用程序上下文获取的资源未更改。例如:
MyApplication.getApplication().getResources().getString(stringId);
Run Code Online (Sandbox Code Playgroud)
用返回错误的语言字符串。
在这种情况下可以更新应用程序实例吗?我把这个问题坚持了几个小时。因为MyApplication.getApplication()已在我的应用程序的许多地方使用。因此,我无法转换为Activity上下文。
非常感谢。
android multiple-languages applicationcontext android-7.0-nougat
android ×1
c ×1
c++ ×1
c++11 ×1
control-flow ×1
eclipse ×1
haskell ×1
if-statement ×1
instanceof ×1
interop ×1
java ×1
organization ×1
php ×1