#!/bin/sh -f
set proj_dir="OutputDir"
for projname in lib proj1 proj2
do
mv ./scripts/$projname_BYTECODE ./$proj_dir/scripts/$projname
done
Run Code Online (Sandbox Code Playgroud)
一个非常简单的例子,说明对我不起作用的情况。$ projname_BYTECODE被解释为变量名,但_BYTECODE实际上是文件夹名的一部分。有什么建议吗?
下面的代码来自hackermeter.com,我不知道该怎么想.变量i是隐式传递给run()还是期望更多修改而不是它指定的位置?
import sys
def run():
# Code here!
for i in range(int(sys.stdin.readline())):
run()
Run Code Online (Sandbox Code Playgroud) 我有这个代码:
#include <iostream>
int main() {
double val = -400.0;
const double constVal = -400.0;
std::cout << val << std::endl;
std::cout << static_cast<unsigned>(val) << std::endl;
std::cout << constVal << std::endl;
std::cout << static_cast<unsigned>(constVal) << std::endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
当我运行它时,这是输出:
-400
4294966896
-400
0
Run Code Online (Sandbox Code Playgroud)
为什么会发生这种情况?适量的谷歌搜索在这个问题上没有显示任何内容。
给定一系列命令和必须为每个命令运行的非常独特的代码:
if(cmd == "cmd.setBoosterRocket")
...
else if(cmd == "cmd.windSales")
...
else if(cmd == "cmd.selfDustruct")
...
else if(cmd == "cmd.unleashHounds")
...
Run Code Online (Sandbox Code Playgroud)
这可能如何优化?被放到一个switch语句中,那是什么?
我考虑过制作一个哈希向量:
std::hash<std::string> hasher;
for(std::string command : m_commandList)
m_mashes.push_back(hasher(command)
Run Code Online (Sandbox Code Playgroud)
但是向量不能作为 switch case 语句的一部分访问,因为它不是 constexpr。字符串命令列表在编译时是已知的,我可能会对哈希值进行硬编码……但这似乎不是一个好主意。