标签: compilation

在java中返回String []

如何在Java中返回数组String?我不断收到错误消息,说我无法从String转换为String [],但它不应该尝试这样做.我对CS很陌生,所以我不太确定.这是我的班级文件:

public class questionOrder {
    public String[] order(int x, String W, String X, String Y, String Z){
           String f = W;
           String g = X;
           String h = Y;
           String j = Z;

    switch(x){

        case 1: String[] ar = {f,g,h,j};
        return ar;

    }
    }

}
Run Code Online (Sandbox Code Playgroud)

java string compilation return

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

在VB.NET中,*0.25比/ 4快

我知道之前已经回答过类似的问题,但我找不到的答案都不是针对.NET的.

VB.NET编译器是否优化了以下表达式:

x = y / 4
Run Code Online (Sandbox Code Playgroud)

通过编译:

x = y * 0.25
Run Code Online (Sandbox Code Playgroud)

在任何人说不要担心差异很小之前,我已经知道但是这将会被执行很多而选择一个而不是另一个可以在总执行时间上产生有用的差异并且比更重要的更容易做重构练习.

也许我应该为那些生活在完全自由的环境中的人们提到:我不能自由地改变为另一种语言.如果我是,我可能会在Fortran中编写此代码.

vb.net math optimization performance compilation

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

在C++程序中使用C头

我有一个包含枚举的C头文件

typedef enum {leaf, operator} my_type;
Run Code Online (Sandbox Code Playgroud)

现在当我尝试在我的C++程序中包含此标题时,我得到错误"'运算符'之前的预期标识符"

我怎么能摆脱它.

c c++ compiler-construction compiler-errors compilation

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

为什么我在c ++中获得不同的输出?

int main(){

    int x;
    cout<<"enter a number: ";
    cin>>x;
    cout<<endl;
    odd(x);


    return 0;
}

void odd(int a){

if(a%2 != 0){

    cout<<"the number is odd : "<< '(' +a+ ')';

    }else{

    even(a);

    }
}
Run Code Online (Sandbox Code Playgroud)

我执行了上面的程序,得到了不同的输出:

enter a number: 15

the number is odd : 96
Run Code Online (Sandbox Code Playgroud)

为什么会这样?

谢谢

c++ compilation

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

是否有编译无限时间的C++代码?

我经常听说"C++源代码需要大量的时间和内存来编译".

我也听说C++模板是Turing完成的,所以它可能会遇到Halting问题.

我还构建了一个C++项目,花费8 GiB的内存和2小时的时间.

所以,问题是:是否存在编译无限时间的C++代码?

(嵌套包含或嵌套模板是可检测的,因此不应计算.)

相关问题:是否存在可编译无限内存的C++代码?(我将它们分开,因为我期待不同的答案.)

c++ templates compilation turing-machines

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

在if-else语句中声明时,C++编译器会给出单元化变量警告

我确信这有一个简单的解释,但我有一些像这样的代码:

  RoutingTablePoolEntry rtpe;
  RoutingTablePoolEntry* rtpePtr;

  if (rtpeItr == m_rtpool.end()) {
    RoutingTableEntry* routeEntryPtr = m_nlsr.getRoutingTable()
      .findRoutingTableEntry(destRouter);

    if (routeEntryPtr == nullptr) {
      RoutingTablePoolEntry rtpe(destRouter);
    }
    else {
      RoutingTablePoolEntry rtpe(*routeEntryPtr);
    }

    RoutingTablePoolEntry* rtpePtr = addRtpeToPool(rtpe);
  }
  else {
    RoutingTablePoolEntry* rtpePtr = &(rtpeItr->second);
  }
  doSomeStuffWithRtpe()
Run Code Online (Sandbox Code Playgroud)

编辑:这是一些真正的代码.错误是否仍在变量范围内?我在这个例子中意识到,但这仍然是问题吗?我尝试了表单的条件初始化: RoutingTablePoolEntry rtpe(routeEntryPtr == nullptr? ... : ...);但这似乎也没有合作太多.

编辑#2:我是个白痴,对不起.原因非常清楚,我只是没有看到它.

rtpe = RoutingTablePoolEntry(destRouter)并且 rtpePtr = &(rtpeItr->second) 在很小的机会中,任何人都会这样做.

c++ compilation compiler-warnings

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

-x和~x + 1之间的差异

我知道对于带符号的32位或64位整数-x~x + 1返回相同的结果.

但我有几个问题:

  1. 编译器是否将它们转换为相同的操作?
  2. 为什么?
  3. 如果没有,它们是如何翻译的?
  4. 如果没有,那么确实-x有直接的硬件实现吗?

performance assembly compilation

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

与c相比,转二进制大小

昨天我只想比较简单的golang HelloWorld应用程序和c,go二进制文件就像2-3 MB(只是fmt.Println)等效的c代码,然而,只有大约20 kb(printf).然后我检查了二进制文件正在进行的系统调用,使用strace; 两者之间没有太大的区别所以你是否知道为什么golang二进制文件与c等价物相比如此庞大?

c binary compilation go

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

目标文件中的重复符号:

我正在尝试编译两个.cpp文件,(foo.cpp和bar.cpp)并构建一个共享对象(project.so).但是编译失败并且(我的一部分)错误是:

....
duplicate symbol _n in:
foo.o
bar.o
ld: 5 duplicate symbols for architecture x86_64
clang: error: linker command failed with exit code 1(use -v to see 
invocation)
make: *** [project.so] Error 1
ERROR: compilation failed for package ‘project’
Run Code Online (Sandbox Code Playgroud)

我的.cpp文件有几个常见的和不常见的头文件,一些常见和不常见的命名函数,以及一组通常命名的变量:

Foo.cpp中

#include <iostream>
#include <fstream>
#include <vector>
#include <ctime>
#include <cmath>

size_t m1;
double k1=2.0;
std::vector<double> x,y;
std::vector<double> z;
size_t n,p;

void inputfoo(){...}
void output(){...}
Run Code Online (Sandbox Code Playgroud)

bar.cpp

#include <iostream>
#include <fstream>
#include <vector>
#include <ctime>
#include <cmath>
#include "Eigen/Dense"
#include "Eigen/Cholesky" …
Run Code Online (Sandbox Code Playgroud)

c++ r compilation linker-errors

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

使用.txt文件编译多个c ++文件?

我已经读过可以使用命令行编译多个链接的c ++文件g++ file1.cpp file2.cpp file3.cpp,依此类推.

但我的问题是:有没有办法在.txt文件中写入该文本,以便轻松更新?因为我觉得写每个文件名都很长而且不那么实用......

++有没有办法用Atom Editor编译多个c ++文件?我正在使用gpp-compiler包但我找不到让它工作的方法......

c++ command-line compiler-errors compilation atom-editor

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