标签: declaration

动态声明变量名

任务是创建具有动态名称的变量。不是类型,而是名称!
向我提出的所有方法(例如通过cl_abap_typedescrcl_abap_elemdescr类)都是无用的。
我想在语义上实现这样的东西,但这个语法是不正确的:

CREATE DATA (name) TYPE var_type.
Run Code Online (Sandbox Code Playgroud)

有什么解决办法吗?

variables abap declaration dynamic

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

在类型后放一个“&”

我对编程相当陌生。我刚刚在大学课程中从 C 转到 C++,并且遇到了我以前在 C 中从未见过的东西。有时在类型之后,无论是在函数声明中还是在传递参数中,都会&紧跟在类型之后。例如,我们在我们的一个项目中使用了一个名为 Customer 的结构体,其中一些函数通过Customer&。为什么在类型之后是&符号,而不是在前面?谢谢!

c++ parameters types declaration ampersand

0
推荐指数
1
解决办法
3782
查看次数

在同一行中声明成员引用变量

为了方便命名,我在代码中写了这些看似无害的行:

struct Foo{
    double vec[2];
    double& a=vec[0],b=vec[1];
};
Run Code Online (Sandbox Code Playgroud)

但由于某种原因,变量"a"工作正常而"b"没有(它返回垃圾).这很奇怪,因为它似乎是一种有效的方式来声明它们.然后我测试了一些替代方法:

#include <iostream>
using namespace std;
struct Foo{
    double vec[2];
    double& a=vec[0],b=vec[1]; //does not work

    double& c=vec[0];
    double& d=vec[1]; //works

    double ev,fv;
    double& e=ev,f=fv; // does not work

    double& g,h; // does not work
    Foo() : g(vec[0]) ,h(vec[1]){};

    void bar(){
        vec[0]=1;
        vec[1]=2;
        ev=1;
        fv=2;
        cout<<"a: "<<a<<endl;
        cout<<"b: "<<b<<endl;    
        cout<<"\nc: "<<c<<endl;
        cout<<"d: "<<d<<endl;
        cout<<"\ne: "<<e<<endl;
        cout<<"f: "<<f<<endl;        
        cout<<"\ng: "<<g<<endl;
        cout<<"h: "<<h<<endl;

        double& i=vec[0], j=vec[1]; //works
        cout<<"\ni: "<<i<<endl;
        cout<<"j: "<<j<<endl;
    }
}; …
Run Code Online (Sandbox Code Playgroud)

c++ declaration member c++11

0
推荐指数
1
解决办法
72
查看次数

“无效致命(字符*);”是什么意思?

我刚开始学习 C,我在给出的一个例子中遇到了这个,我知道这是一个函数原型,但我还没有理解的概念是这样一个事实

void function(char *);
Run Code Online (Sandbox Code Playgroud)

意味着当我最终声明该函数时,它将采用像这样的参数 char 指针参数

void function(char *arg){}
Run Code Online (Sandbox Code Playgroud)

?

c prototype declaration function

0
推荐指数
1
解决办法
749
查看次数

Lazarus 中的 Var 声明

我在 lazaus (2.0.6) 中声明变量时遇到了奇怪的行为

如果我使用以下序列声明变量,程序会通过给出 SIGSEGV 错误来停止执行,如果我将初始值分配给 TabCellContent var 的第二个字段,则会弹出错误

TabReadActive: Boolean;
ShCol: Array[0..6] of Boolean;
TabCellContent: Array [0..6] of Array [1..50] of TCellContent;
Run Code Online (Sandbox Code Playgroud)

但是如果我将“TabReadActive”放在 Array 的声明下方,则程序正常运行而不会出错

ShCol: Array[0..6] of Boolean;
TabCellContent: Array [0..6] of Array [1..50] of TCellContent;
TabReadActive: Boolean;
Run Code Online (Sandbox Code Playgroud)

有没有人遇到过同样的行为?这是什么原因?

variables freepascal declaration sequence lazarus

0
推荐指数
1
解决办法
89
查看次数

如何从函数返回指向 char[][][] 的指针?

我有一个static-char 数组定义为:

static const char city_names[1000][4][50];
Run Code Online (Sandbox Code Playgroud)

我想从函数返回一个指向这个变量的指针,我尝试 a static_casttovoid*但它失败了。我怎样才能返回一个指针char[][][]

c++ arrays pointers declaration function-declaration

0
推荐指数
1
解决办法
92
查看次数

如何在命名空间 App\Controller 中声明一个新函数?

我编写了将生日日期转换为年龄的那些代码行。

我将在许多控制器和许多路由功能中使用此代码!所以我决定把它放在一个函数中,然后调用calculate_age().

我的问题是我怎么可以声明函数或任何功能 一旦里面的namespace App\Controller;?所以我可以在所有控制器中使用它。

功能代码:

public function calculate_age($birthday): ?int
{
    $current_date = date('d-m-Y', time());
    $info         = explode(' ', $birthday);
    $months       = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
    $numbers      = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];
    $i            = 0;
    for ($i = 0; $i <= 11; ++$i) {
        if ($info[2] == $months[$i]) {
            $info[2] = $numbers[$i];
        }
    }
    $all = $info[1].'-'.$info[2].'-'.$info[3];

    $difference = …
Run Code Online (Sandbox Code Playgroud)

php namespaces declaration function symfony

0
推荐指数
1
解决办法
137
查看次数

我如何在main下面写一个函数?

我有一位老师/教授只喜欢在 main 下方而不是在它上方编写函数。我将如何重写它以编写 main.js 下面的函数?一直在下面教怎么做,我可以提前声明吗?如果是这样,它会是什么样子?

#include <iostream>
using namespace std;
/* Output
Enter 4 test score numbers
80 90 80 90
Average is 86.6667

Enter 4 test score numbers
70 80 -60 90
Bad Data

*/
bool input(double& test1, double& test2, double& test3, double& test4)
{
cout << "Enter 4 test score numbers" << endl;
cin >> test1;
cin >> test2;
cin >> test3;
cin >> test4;

if(test1 < 0 || test2 < 0 || test3 < 0 || test4 …
Run Code Online (Sandbox Code Playgroud)

c++ declaration function-prototypes

0
推荐指数
1
解决办法
98
查看次数

我可以在“if 语句”中声明一个变量吗?

我正在编写一个“自动售货机”程序,我需要有 5 个项目,其中 3 个项目的成本是整数,另外 2 个项目的成本是小数。

我只if在此代码中使用语句,但我的cost变量有错误。

我做错了什么?

代码如下:

#include <iostream>
using namespace std;

int main() {

  cout << "Vending Machine" << endl;
  cout << "----Items------" << endl;
  cout << "1. Popcorn: $2" << endl;
  cout << "2. Coconut Clusters: $3" << endl;
  cout << "3. Granola Bar: $2.50" << endl;
  cout << "4. Trail Mix: $1.50" << endl;
  cout << "5. Chocolate: $1" << endl;

  cout << "Enter you selection: " << flush;
  int …
Run Code Online (Sandbox Code Playgroud)

c++ variables if-statement declaration

0
推荐指数
1
解决办法
136
查看次数

为什么我可以在 C 中定义一个变量两次?

我一直在测试全局变量,定义和声明,我在这种情况下停了下来:

主文件:

#include "stdio.h"

void func(void);
int a;

int main(void) {
    a = 20;
    printf("in main: %d\n", a);
    func();
    
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

添加.c:

#include <stdio.h>

void func(void);
int a;

void func() {
    printf("in add: %d\n", a);
}
Run Code Online (Sandbox Code Playgroud)

所以在 C 中

int a;
Run Code Online (Sandbox Code Playgroud)

既表示声明又表示定义,但我们知道不允许多次定义变量。那么,如果我们有两个定义和两个声明,为什么这段代码会编译a呢?我在 CLion 中工作,当我在 main 中按“转到定义/声明”时a,它会将指针移至aadd.c,当我在 add.c 中执行相同操作时,它会移回 main.c,因此我无法理解这里发生了什么。

c declaration global-variables definition

0
推荐指数
1
解决办法
236
查看次数