私はこのようなデータ構造を持っています:
struct foo { int id; intルート; int backup_route; int current_route; }
そしてupdate()と呼ばれる関数を使用して、その変更をリクエストします。
update(42、dont_care、dont_care、new_route);
これは非常に長く、構造に何かを追加する場合、update(...)へのすべての呼び出しに 'dont_care'を追加する必要があります。
代わりに構造体を渡すことを考えていますが、構造体に「dont_care」をあらかじめ入力しておくことは、関数呼び出しで単純にスペルアウトするよりも面倒です。構造体をどこかにデフォルト値dont careで作成し、それをローカル変数として宣言した後に、気になるフィールドを設定することはできますか?
struct foo bar = {.id = 42、.current_route = new_route}; update(&bar);
表現したい情報だけを更新関数に渡す最もエレガントな方法は何ですか?
そして、私は他のすべてをデフォルトで-1にしたい(「気にしない」の秘密のコード)