标签: program-entry-point

c ++标准禁止void main()原型吗?

在C++标准1998和2003版本的3.6.1.2节中,

实现不应预定义主函数.此功能不应过载.它应该具有int类型的返回类型,否则其类型是实现定义的.

我不是母语为英语的人.我不确定"但是否则"是什么意思.是否禁止其他返回类型,或赋予C++编译器编写者权利?

那么答案是什么?

c++ standards program-entry-point

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

为什么main()函数没有在if'__main__'中定义?

你经常可以看到这个(变异a):

def main():
   do_something()
   do_sth_else()

if __name__ == '__main__':
    main()
Run Code Online (Sandbox Code Playgroud)

我现在想知道为什么这样(变异b):

if __name__ == '__main__':
   do_something()
   do_sth_else()
Run Code Online (Sandbox Code Playgroud)

或者至少这个(变化c):

if __name__ == '__main__':
    def main():
        do_something()
        do_sth_else()

    main()
Run Code Online (Sandbox Code Playgroud)

当然,内部函数调用main()可能不是函数调用,它们只代表您可能想要在main()函数中执行的任何操作.

那么为什么人们更喜欢变异而不是其他?它只是风格/感觉还是有一些真正的原因?如果可能,请链接来源.

python program-entry-point

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

如何运行嵌入式vert.x?

我用main(args)编写了一个Groovy MainApp.

当我启动它时,JVM直接退出("JVM执行结束!").

import org.vertx.groovy.core.Vertx

class MainApp {

    public static void main(String[] args) {

        Vertx vertx = VertxFactory.newVertx();

        vertx.createHttpServer().requestHandler{ request -> 
            println "A request has arrived on the server!" 
        }.listen(8080)

        println "End of JVM execution !"
    }
}
Run Code Online (Sandbox Code Playgroud)

如何使用vert.x 正确运行嵌入式 HTTP服务器?

java program-entry-point vert.x

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

如何在Java中定义main(String [] args)而不会收到警告和错误?

当我在Eclipse项目的默认包中创建一个新的main.java文件时,它会生成一个如下所示的main方法:

public static void main(String[] args)
{
}
Run Code Online (Sandbox Code Playgroud)

这立即引发了一个警告说This method has a constructor name.建议的解决方法是删除void:

public static main(String[] args)
{
}
Run Code Online (Sandbox Code Playgroud)

现在而不是警告,我得到一个错误:Illegal modifier for the constructor in type main; only public, protected & private are permitted.如果我删除了static,我的代码现在看起来像:

public main(String[] args)
{
}
Run Code Online (Sandbox Code Playgroud)

这一次,我仍然得到一个错误,但另一个错误说:

Error: Main method not found in class main, please define the main method as:
    public static void main(String[] args)
Run Code Online (Sandbox Code Playgroud)

Argggh!但这让我回到了我开始的地方.如何定义主方法以便我不会收到任何错误或警告?

我正在使用Eclipse Juno Service Release 2JavaSE-1.7.请注意,我对Java很新; …

java eclipse warnings program-entry-point

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

GCC:如何告诉GCC将'main'函数放在.text段的开头?

我刚刚开始学习一些ARM编程,但我遇到了一个有点恼人的问题.我用来编译源代码的工具链是Sourcery CodeBench Lite 2013.05-23(可以在这里找到:https://sourcery.mentor.com/GNUToolchain/release2449 )

我需要的是告诉GCC或LD或OBJCOPY将'main'函数的编译字节码放在.text段的开头.

有没有办法实现这个目标?(也许通过链接器脚本?)

谢谢

gcc program-entry-point ld linker-scripts objcopy

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

Java - 在不同的进程中启动另一个类的 main

我需要一种干净的方法来启动带有 GUI 的 Java 程序的许多实例,并且我想以编程方式进行。我想运行的“程序”只是一个 .class 文件(一个带有 main 方法的编译后的 .java 文件),它应该显示一个 GUI 并独立于其他程序运行(作为它自己的进程)。我还需要向该程序传递一些参数。

检查 EDIT5 以获取完整的工作解决方案代码。

这是应该启动许多进程的类

package startothermain;

import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;

public class Starter {

    public static void main(String[] args) {
        int starts = 4;

        for (int i = 0; i < starts; ++i) {
            System.out.println("Starting an app");
            ProcessBuilder pb = new ProcessBuilder("java.exe", "-cp", "bin", "Started", "arg0");
            try {
                pb.start();
            } catch (IOException ex) {
                Logger.getLogger(Starter.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这是应该启动并显示 GUI 的类

package …
Run Code Online (Sandbox Code Playgroud)

java netbeans program-entry-point runtime processbuilder

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

我什么时候需要在main()之前或之后运行函数?

GCC支持construtors /析构函数,它们支持在main()之前或之后运行函数:

constructor属性导致在执行进入之前自动调用该函数main().同样,该destructor属性会导致在main()完成或exit()调用后自动调用该函数.具有这些属性的函数对于初始化在程序执行期间隐式使用的数据非常有用.

以下是GeeksforGeeks的一个例子.

何时使用此功能的正确方案?特别是在main()之前调用的函数,如果我们将它放在main()的开头有什么区别?

c gcc program-entry-point

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

为什么main()在java中声明为public和static

为什么主要声明为公共和静态?

public static void main(String arg[])
{}
Run Code Online (Sandbox Code Playgroud)

根据java中的ans

"The method is static because otherwise there would be ambiguity: which constructor should be called?"
Run Code Online (Sandbox Code Playgroud)

java static program-entry-point public

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

如何修复Uncommented主方法?

我一直在通过谷歌寻找这个问题但事实证明我找不到解决这个问题的方法.实际上我有一个经典的main方法,我运行一个工作,但sonarqube不断重复我有一个未注释的主要方法找到.

这是代码:

     /**
     * Main : Run MapReduce job
     * 
     * @param args
     *            arguments
     */
    public static void main(String[] args) {
        ExitManager exitManager = new ExitManager();
        // run job
        if (!runJob(args)) {
            exitManager.exit(1);
        }
    }
Run Code Online (Sandbox Code Playgroud)

我没有看到任何特殊问题,所以这个问题来自哪里?你知道我怎么解决这个问题吗?

谢谢.

java methods comments program-entry-point sonarqube

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

Java中的String ... args和String [] args之间有什么区别吗?

String... argsString[] argsJava有什么区别?

我是Java编程的新手.任何人都可以告诉我(String....args)和(String [] args)之间的区别是什么?如果我将使用第一个代替第二个........它有什么区别吗?

String... args将声明一个期望可变数量的String参数的方法.参数的数量可以是任何东西:包括零.

String[] args而等价物String args[]将声明一个只需要一个参数的方法:一个字符串数组.

可能不会从这些观察结果中产生的一个区别是,在第二种情况下(但不是第一种情况),调用者可能具有对该数组的引用.在这两种情况下,该方法都使用args作为字符串数组,但如果它执行交换数组元素之类的操作,则在使用String... args表单时调用者将无法看到这些数据元素.

java program-entry-point variadic-functions

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