下面是我的意思的一个例子:
class Duck:
SIZE = 'Fat'
class GreenDuck(Duck):
COLOR = 'Green'
DESCRIPTION = SIZE + ' and ' + COLOR
>>> alien_duck = GreenDuck()
>>> print(alien_duck.DESCRIPTION)
NameError: name 'SIZE' is not defined
>>> alien_duc
我使用Octave (或Matlab...我有两个可用的),并试图使一个函数,将设置我的重要变量在我的其余研究中使用。
但是,默认情况下,在函数中声明的变量仅具有该函数的有限作用域。
有没有办法做到这一点?
function defineBasicTerms()
global G = 9.807;
global F = [exp(1) 0; 0 1/exp(1)];
endfunction
这样在调用此函数后,变量G和F存在于全局命名变量集中?
我希望在我的小程序中使用enums对常量变量进行分组,并且我希望设置这些值,以便以后可以提取这些值并将它们作为整数使用。
我在想这样的事情:
public enum Value {
THREE = 3,
SIX = 6,
NINE = 9
}
因此,稍后我可以检索如下内容的值:
int[] myIntArray = new int[Value.THREE];
我以前以这种方式使用C++,但这在Java中不起作用。是否有一种显式设置Java枚举值的方法,并且有人可以解释我如何设置,然后从我的enum中提取值?
以下是从C++ Vol1第10章中的思考中复制的一些代码。
#include <iostream>
using namespace std;
int x = 100;
class WithStatic {
static int x;
static int y;
public:
void print() const {
cout << "WithStatic::x = " << x << endl;
常量变量在C/C++中何时以及如何初始化?我对特定的类型很好奇:
1) const static member of a class
2) function const local variable
3) const global variable
我的意思是,当然是应用程序运行时,而不是初始化它们的源代码方式。
我想定义某种结构(struct?命名空间?class?)我的程序将全局知道的物理常量。这样做的目的是让我能够给常量起简单、直观的名称,同时在其他地方保护这些值。例如,我可以在这个结构中将q定义为基本电荷,而不必担心在程序中的其他地方意外地将q用作循环变量。我的想法是定义一个结构(在main.h中):
struct constants {
float q=1.6022e-19;
} _C;
但这给了我一个错误
main.h:79: error: ISO C++ forbids initialization of member 'q'
main.h:79: error: m
我正在使用我的C++编译器,我注意到全局变量的递归依赖,函数调用没有被拒绝。示例:
#include <iostream>
int foo();
int t = foo();
int foo()
{
std::cout << "Hello before main: " << t << "\n";
t = 10;
return t + 10;
}
int main()
{
std::cout << "Hello from main.\n";
}
此编译后
我对C# (C++程序员主要是以Java作为强第二语言,还有一些是我使用的较少)还是很陌生的;我使用的是带有统一的C#,但我有一个似乎与C#相关的问题,而不是团结。
我在某种程度上转向了函数式编程,即不是
// C++
int someFunction(int a) {
int someCalculatedValue = a * a;
someCalculatedValue /= 2;
return someCalculatedValue * 3;
}
我会做这样的事
// Again C++
int someFunction(int a) {
const in