小编vir*_*00x的帖子

为什么这段代码在 C++17 中编译没有错误?

我已经删除了所有的构造函数,即使下面的代码运行良好。如何以及为什么?

class Ax
{    
    public:
    
    Ax() = delete;
    Ax(Ax const&)=delete;
    Ax(Ax&&)=delete;
    void operator=(Ax const&)=delete;
    void operator=(Ax&&)=delete;

    void print()
    {
        cout << "Hello \n";
    }
};

int main(int argc, char** argv) 
{           
    Ax{}.print();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ c++17

49
推荐指数
2
解决办法
3938
查看次数

如何在 kotlin 脚本中包含 jar 文件

我想从我的 kotlin 脚本文件中分离出一些通用代码,以便可以重用它。

我这样做了:

// MyLib.kt

package myLib
fun say_hello(name : String)
{
   println("hello $name")
}
Run Code Online (Sandbox Code Playgroud)

我编译这个文件来创建一个 jar 文件:

kotlinc myLib.kt -include-runtime -d myLib.jar
Run Code Online (Sandbox Code Playgroud)

然后我创建了一个脚本文件:

// myScript.kts

import myLib.*
say_hello("Arvind")
Run Code Online (Sandbox Code Playgroud)

但我无法编译脚本文件,因为它既不识别 myLib 包也不识别 say_hello() 函数。

执行此操作的正确方法是什么。

问题更新: 我正在使用 kscript 来运行我的脚本。打字很多,例如,

kotlin -cp myLib.jar myScript.kts
Run Code Online (Sandbox Code Playgroud)

每次我都必须运行脚本,从而破坏了使用 kscript 的动机。

有没有什么方法可以让我不必每次命令行都给出 jar 的路径。相反,我想以 kscript 的方式使用它,即

./myScript
Run Code Online (Sandbox Code Playgroud)

kotlin kotlin-script

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

标签 统计

c++ ×1

c++17 ×1

kotlin ×1

kotlin-script ×1