go-translator/pkg/service/features/variables.feature

106 строки
1,6 КиБ
Gherkin

# Во имя Бога Милостивого, Милосердного!!!
# language: ru
Функциональность: Преобразование в C++: переменные и константы
Сценарий: Блок констант
* Исходник:
```
package test
const (
c1 = 4
c2 = 5
c3 = 5.5
s1 = "privet"
)
```
* Результат:
```
const int c1 = 4;
const int c2 = 5;
const double c3 = 5.5;
const std::string s1 = "privet";
```
Сценарий: Блок переменных
* Исходник:
```
package test
var (
c1 = 4
c2 = 5
c3 = 5.5
s1 = "privet"
)
```
* Результат:
```
int c1 = 4;
int c2 = 5;
double c3 = 5.5;
std::string s1 = "privet";
```
Сценарий: Массив
* Исходник:
```
package test
var (
a []int
b []bool
c [8]int
d [LENGTH]int
)
```
* Результат:
```
int a[];
bool b[];
int c[8];
int d[LENGTH];
```
Сценарий: Кастомные типы
* Исходник:
```
package test
type Mera int
type GPIOS [GPIO_count]bool
```
* Результат:
```
typedef int Mera;
typedef bool GPIOS[GPIO_count];
```
Сценарий: Переменные в функциях
* Исходник:
```
package test
func foo() {
var foo string = "bar"
}
```
* Результат:
```
void foo();
void foo() {
std::string foo = "bar";
}
```
Сценарий: Инициализация переменной - тип auto
* Исходник:
```
package test
func foo() {
a := NewDevice(1,b,"stroka")
}
```
* Результат:
```
void foo();
void foo() {
auto a=NewDevice(1,b,"stroka");
}
```