标签: variable-names

表名作为变量

我正在尝试执行此查询:

declare @tablename varchar(50)
set @tablename = 'test'
select * from @tablename
Run Code Online (Sandbox Code Playgroud)

这会产生以下错误:

Msg 1087,Level 16,State 1,Line 5

必须声明表变量"@tablename".

什么是动态填充表名的正确方法?

sql t-sql sql-server variable-names tablename

153
推荐指数
6
解决办法
38万
查看次数

为什么变量名不能以数字开头?

我在回答问题时曾与一位新的C++开发人员合作:"为什么变量名称不能以数字开头?"

我无法想出答案,除了一些数字可以包含文本(123456L,123456U),如果编译器认为所有带有一些字母字符的数字都是变量名称,那就不可能.

这是正确的答案吗?还有其他原因吗?

string 2BeOrNot2Be = "that is the question"; // Why won't this compile?
Run Code Online (Sandbox Code Playgroud)

c++ variables programming-languages language-design variable-names

126
推荐指数
10
解决办法
9万
查看次数

使用不同于其类型的变量名称,我是不道德的?

例如,拿这段代码:

var person = new Person();
Run Code Online (Sandbox Code Playgroud)

或者你的Pythonistas:

person = Person()
Run Code Online (Sandbox Code Playgroud)

我不断被告知这有多糟糕,但还没有看到这两行代码不道德的例子.对我来说,人是一个人,并试图给它另一个名字是浪费时间.我想在语法突出显示之前的几天,这将是一个大问题.但是现在,除了变量名之外,告诉类型名称很容易.哎呀,在SO上看到差异很容易.

还是有什么我想念的?如果是这样,如果您能提供导致问题的代码示例,将会很有帮助.

language-agnostic coding-style naming-conventions variable-names

95
推荐指数
9
解决办法
3996
查看次数

如何将对象加载到我从R数据文件指定的变量名中?

使用时将变量保存在R数据文件中时save,它将以保存它的会话中的名称保存.当我稍后从另一个会话加载它时,它加载了相同的名称,加载脚本不可能知道.此名称可能会覆盖加载会话中同名的现有变量.有没有办法将数据文件中的对象安全地加载到指定的变量名中,而没有破坏现有变量的风险?

例:

保存会话:

x = 5
save(x, file="x.Rda")
Run Code Online (Sandbox Code Playgroud)

加载会话:

x = 7
load("x.Rda")
print(x) # This will print 5. Oops.
Run Code Online (Sandbox Code Playgroud)

我希望它如何工作:

x = 7
y = load_object_from_file("x.Rda")
print(x) # should print 7
print(y) # should print 5
Run Code Online (Sandbox Code Playgroud)

r variable-names rdata

85
推荐指数
5
解决办法
3万
查看次数

在C中获取变量名的编程方式?

我正在开发一个从变量转储数据的工具.我需要转储变量名称,以及值.

我的解决方案:将变量名称存储为字符串,并打印"变量名称",后跟其值.

是否有任何编程方式来了解变量名称?

c variables variable-names

31
推荐指数
4
解决办法
3万
查看次数

$变量名?

我偶然发现了一些像这样的(c ++)代码:

int $T$S;
Run Code Online (Sandbox Code Playgroud)

首先,我认为它是某种PHP代码或者错误地粘贴在那里但它编译并运行得很好(在MSVC 2008上).

什么类型的字符对C++中的变量有效,是否还有其他奇怪的字符可以使用?

c++ variables identifier variable-names visual-c++

26
推荐指数
2
解决办法
1万
查看次数

为什么我可以声明一个与父作用域中的变量同名的子变量?

我最近写了一些代码,我无意中将一个变量名重用作为一个动作的参数,该动作在一个已经具有同名变量的函数中声明。例如:

var x = 1;
Action<int> myAction = (x) => { Console.WriteLine(x); };
Run Code Online (Sandbox Code Playgroud)

当我发现重复时,我惊讶地发现代码编译并完美运行,根据我对 C# 中作用域的了解,这不是我所期望的行为。一些快速的谷歌搜索出现了抱怨类似代码确实会产生错误的SO 问题,例如Lambda Scope Clarification。(我将该示例代码粘贴到我的 IDE 中以查看它是否可以运行,只是为了确保它可以完美运行。)此外,当我在 Visual Studio 中进入“重命名”对话框时,第一个x被突出显示为名称冲突。

为什么这段代码有效?我在 Visual Studio 2019 中使用 C# 8。

c# lambda scope variable-names c#-8.0

26
推荐指数
1
解决办法
1231
查看次数

Bash变量:区分大小写还是不区分?

bash shell脚本是否区分大小写?

变量date是一样的DATE吗?

linux bash shell case-sensitive variable-names

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

Python中的变量名不能以数字开头,还是可以?

这在某种程度上是学术性的,但不过.

Python语法禁止使用数字启动变量名称.但这可以像这样回避:

>>> globals()['1a'] = 1
>>> globals()['1a']
1
Run Code Online (Sandbox Code Playgroud)

同样地locals().

这是否意味着,Python实际上允许它,只是不是很明显?

编辑:

我的问题不是,是否允许.我知道,它在Python中是正式不允许的.问题是为什么我可以通过globals()直接解决来解决它,并且这会破坏其他规则或指导方针,甚至可能有一个很好的理由/应用程序来允许它.

python variable-names

24
推荐指数
2
解决办法
2万
查看次数

PHP:调用变量函数名称; 如何告诉IDE我的函数被调用?

我目前正在尝试删除我的项目中的所有错误和警告,我的PHPStorm中的检查工具给了我.

我遇到一个片段PHPStorm说"未使用的私有方法_xxx"虽然它实际上使用,但以动态的方式.这是一个简化的代码段:

<?php
class A
{
    private function _iAmUsed()
    {
        //Do Stuff...
    }

    public function run($whoAreYou)
    {
        $methodName = '_iAm' . $whoAreYou;
        if (method_exists($this, $methodName)) {
            $this->$methodName();
        }
    }
}

$a = new A();
$a->run('Used');
?>
Run Code Online (Sandbox Code Playgroud)

在这个片段中,PHPStorm将告诉我"未使用的私有方法_iAmUsed",而事实上,它被使用...我怎么能通过添加PHPDocs或其他东西,让我的IDE理解我的方法实际上是用的?

请注意,我给我的"运行"调用,一个静态字符串,但我们可以想象这个:

<?php
$a->run($_POST['whoYouAre']); //$_POST['whoYouAre'] == 'Used'
?>
Run Code Online (Sandbox Code Playgroud)

非常感谢!

php phpdoc variable-names phpstorm

19
推荐指数
2
解决办法
3006
查看次数