Вопросы по теме 'designated-initializer'
С++ эквивалентен назначенным инициализаторам?
Недавно я работал над некоторыми встраиваемыми устройствами, где у нас есть некоторые структуры и объединения, которые необходимо инициализировать во время компиляции, чтобы мы могли хранить определенные вещи во флэш-памяти или ПЗУ, которые не нужно...
17437 просмотров
schedule
20.02.2022
Объединить назначенные инициализаторы и malloc в C99+?
Есть ли хороший способ объединить назначенные инициализаторы из C99 с результатом malloc ?
Следующее кажется ненужным дублированием:
typedef struct {
int a, b, c;
} Type;
Type *t = malloc(sizeof *t);
*t = (Type) {
.a = 2,
.b = 3,...
1489 просмотров
schedule
06.09.2022
как работают назначенные инициализаторы
У меня возникли проблемы с пониманием назначенных инициализаторов. Я изучаю Objective C из книги «Learn Objective C на Mac». Ниже приведен файл реализации.
#import "Tire.h"
@implementation Tire
- (id) init
{
if (self = [self...
91 просмотров
schedule
15.01.2023
-Wmissing-field-initializer при использовании назначенных инициализаторов
Я использую GCC 4.6.2 (Mingw) и компилирую с помощью -Wextra . Я получаю странные предупреждения всякий раз, когда использую назначенные инициализаторы. Для следующего кода
typedef struct
{
int x;
int y;
} struct1;
typedef struct
{
int...
1117 просмотров
schedule
14.02.2023
Отключить назначенную проверку инициализатора в Xcode 6
Я получаю ошибку компиляции:
error: convenience initializer missing a 'self' call to another initializer [-Werror,-Wobjc-designated-initializers]
Назначенные инициализаторы, проверенные компиляцией, могут быть хорошей вещью, но если я не хочу...
8684 просмотров
schedule
28.08.2023
Objective-C: Почему бы не вызвать назначенный инициализатор?
Я унаследовал этот код:
- (id)initWithLocation:(CLLocation *)inLocation {
if (self = [super init])
{
_location = [inLocation copy];
}
return self;
}
- (id)initWithLocation:(CLLocation *)inLocation offsetValue:(NSNumber...
47 просмотров
schedule
04.01.2023
Странные значения при инициализации массива с использованием назначенных инициализаторов
Когда я инициализирую массив ниже, все выходные данные выглядят нормально, за исключением values[3] . По какой-то причине values[3] , инициализированный как values[0]+values[5] , выводит очень большое число. Я предполагаю, что я пытаюсь назначить...
1390 просмотров
schedule
26.05.2023
Объедините два назначенных инициализатора с помощью макроса
Во встроенном проекте я использую библиотеку, которая предоставляет макрос для инициализации структуры. Это обеспечивает разумные значения по умолчанию, но значения по умолчанию зависят от других параметров. Я хочу переопределить одно или несколько...
226 просмотров
schedule
28.04.2022
Как вызвать инициализаторы расширений протокола в назначенных инициализаторах?
Я пытаюсь внедрить инициализатор расширения протокола в назначенный инициализатор существующего класса. Я не думаю, что есть способ обойти это без переопределения назначенного инициализатора из класса, а затем вызвать инициализатор расширения...
749 просмотров
schedule
25.12.2023
Что такое назначенный инициализатор в C?
Я знаю, что это может быть основной вопрос.
У меня есть задание, которое требует от меня понимания того, что такое назначенные инициализаторы в C и что означает инициализация переменной одним из них.
Я не знаком с этим термином и не смог найти...
9835 просмотров
schedule
25.06.2023
Что такое назначенный инициализатор?
Я хочу понять, что предоставляют назначенные инициализаторы, которые отличаются от прямой инициализации.
Например:
#include <iostream>
struct Subject{
int x;
int y;
int z;
};
int main()
{
Subject subject_d{.x = 1, .y =...
106 просмотров
schedule
25.08.2022
Как я могу сослаться на параметр в назначенном инициализаторе?
Я хочу добавить значение параметра к другому параметру в назначенном инициализаторе без необходимости определять отдельную переменную для хранения этого значения. Это возможно?
typedef struct {
int x;
int y;
} point;
int main() {
point p =...
28 просмотров
schedule
13.05.2024
Почему я не могу использовать назначенные инициализаторы со структурами, которые не являются агрегатами?
C++ имеет приятную новую функцию:
struct Point{
int x;
int y;
int z;
};
Point p{.x=47, .y=1701, .z=0};
Но если я добавлю конструктор, мне запрещено использовать красивый синтаксис назначенных инициализаторов:
struct Point{
Point(int x, int...
263 просмотров
schedule
05.06.2022
Агрегатная/назначенная инициализация структуры С++: ссылка непосредственно на другое поле
При использовании агрегатной/назначенной инициализации структуры можно ссылаться на другое поле следующим образом:
#include <stdio.h>
int main()
{
struct
{
int a;
int b;
}
s =
{
.a = 3,
.b = s.a + 1,
};...
89 просмотров
schedule
14.06.2023