?? glib-commandline-option-parser.html
字號:
<a href="glib-Commandline-option-parser.html#g-option-context-parse"><code class="function">g_option_context_parse()</code></a> treats unknown options as error.</p><p>This setting does not affect non-option arguments (i.e. arguments which don't start with a dash). But note that GOption cannot reliablydetermine whether a non-option belongs to a preceding unknown option.</p><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>context</code></em> :</span></td><td> a <a href="glib-Commandline-option-parser.html#GOptionContext"><span class="type">GOptionContext</span></a></td></tr><tr><td><span class="term"><em class="parameter"><code>ignore_unknown</code></em> :</span></td><td> <code class="literal">TRUE</code> to ignore unknown options, <code class="literal">FALSE</code> to produce an error when unknown options are met</td></tr></tbody></table></div><p>Since 2.6</p></div><hr><div class="refsect2" lang="en"><a name="id3064637"></a><h3><a name="g-option-context-get-ignore-unknown-options"></a>g_option_context_get_ignore_unknown_options ()</h3><a class="indexterm" name="id3064650"></a><pre class="programlisting"><a href="glib-Basic-Types.html#gboolean">gboolean</a> g_option_context_get_ignore_unknown_options (<a href="glib-Commandline-option-parser.html#GOptionContext">GOptionContext</a> *context);</pre><p>Returns whether unknown options are ignored or not. See<a href="glib-Commandline-option-parser.html#g-option-context-set-ignore-unknown-options"><code class="function">g_option_context_set_ignore_unknown_options()</code></a>.</p><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>context</code></em> :</span></td><td> a <a href="glib-Commandline-option-parser.html#GOptionContext"><span class="type">GOptionContext</span></a></td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> <code class="literal">TRUE</code> if unknown options are ignored.</td></tr></tbody></table></div><p>Since 2.6</p></div><hr><div class="refsect2" lang="en"><a name="id3064743"></a><h3><a name="GOptionArg"></a>enum GOptionArg</h3><a class="indexterm" name="id3064754"></a><pre class="programlisting">typedef enum{ G_OPTION_ARG_NONE, G_OPTION_ARG_STRING, G_OPTION_ARG_INT, G_OPTION_ARG_CALLBACK, G_OPTION_ARG_FILENAME, G_OPTION_ARG_STRING_ARRAY, G_OPTION_ARG_FILENAME_ARRAY} GOptionArg;</pre><p>The <a href="glib-Commandline-option-parser.html#GOptionArg"><span class="type">GOptionArg</span></a> enum values determine which type of extra argument theoptions expect to find. If an option expects an extra argument, itcan be specified in several ways; with a short option:<code class="option">-x arg</code>, with a long option: <code class="option">--name arg</code>or combined in a single argument: <code class="option">--name=arg</code>.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><code class="literal">G_OPTION_ARG_NONE</code></span></td><td>No extra argument. This is useful for simple flags.</td></tr><tr><td><span class="term"><code class="literal">G_OPTION_ARG_STRING</code></span></td><td>The option takes a string argument.</td></tr><tr><td><span class="term"><code class="literal">G_OPTION_ARG_INT</code></span></td><td>The option takes an integer argument.</td></tr><tr><td><span class="term"><code class="literal">G_OPTION_ARG_CALLBACK</code></span></td><td>The option provides a callback to parse the extra argument.</td></tr><tr><td><span class="term"><code class="literal">G_OPTION_ARG_FILENAME</code></span></td><td>The option takes a filename as argument.</td></tr><tr><td><span class="term"><code class="literal">G_OPTION_ARG_STRING_ARRAY</code></span></td><td>The option takes a string argument, multiple uses of the option are collected into an array of strings.</td></tr><tr><td><span class="term"><code class="literal">G_OPTION_ARG_FILENAME_ARRAY</code></span></td><td>The option takes a filename as argument, multiple uses of the option are collected into an array of strings.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3064907"></a><h3><a name="GOptionFlags"></a>enum GOptionFlags</h3><a class="indexterm" name="id3064918"></a><pre class="programlisting">typedef enum{ G_OPTION_FLAG_HIDDEN = 1 << 0, G_OPTION_FLAG_IN_MAIN = 1 << 1, G_OPTION_FLAG_REVERSE = 1 << 2} GOptionFlags;</pre><p>Flags which modify individual options.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><code class="literal">G_OPTION_FLAG_HIDDEN</code></span></td><td>The option doesn't appear in <code class="option">--help</code> output.</td></tr><tr><td><span class="term"><code class="literal">G_OPTION_FLAG_IN_MAIN</code></span></td><td>The option appears in the main section of the <code class="option">--help</code> output, even if it is defined in a group.</td></tr><tr><td><span class="term"><code class="literal">G_OPTION_FLAG_REVERSE</code></span></td><td>For options of the G_OPTION_ARG_NONE kind, this flag indicates that the sense of the option is reversed.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3064998"></a><h3><a name="G-OPTION-REMAINING:CAPS"></a>G_OPTION_REMAINING</h3><a class="indexterm" name="id3065009"></a><pre class="programlisting">#define G_OPTION_REMAINING ""</pre><p>If a long option in the main group has this name, it is not treated as a regular option. Instead it collects all non-option arguments which wouldotherwise be left in <code class="literal">argv</code>. The option must be of type<code class="literal">G_OPTION_ARG_STRING_ARRAY</code> or <code class="literal">G_OPTION_ARG_FILENAME_ARRAY</code>.</p><p>Using <a href="glib-Commandline-option-parser.html#G-OPTION-REMAINING:CAPS"><span class="type">G_OPTION_REMAINING</span></a> instead of simply scanning <code class="literal">argv</code>for leftover arguments has the advantage that GOption takes care of necessary encoding conversions for strings or filenames.</p><p>Since 2.6</p></div><hr><div class="refsect2" lang="en"><a name="id3065071"></a><h3><a name="GOptionEntry"></a>GOptionEntry</h3><a class="indexterm" name="id3065082"></a><pre class="programlisting">typedef struct { const gchar *long_name; gchar short_name; gint flags; GOptionArg arg; gpointer arg_data; const gchar *description; const gchar *arg_description;} GOptionEntry;</pre><p>A <span class="structname">GOptionEntry</span> defines a single option.To have an effect, they must be added to a <a href="glib-Commandline-option-parser.html#GOptionGroup"><span class="type">GOptionGroup</span></a> with<a href="glib-Commandline-option-parser.html#g-option-context-add-main-entries"><code class="function">g_option_context_add_main_entries()</code></a> or <a href="glib-Commandline-option-parser.html#g-option-group-add-entries"><code class="function">g_option_group_add_entries()</code></a>.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term">const <a href="glib-Basic-Types.html#gchar">gchar</a> *<em class="structfield"><code>long_name</code></em>;</span></td><td>The long name of an option can be used to specify it in a commandline as --<em class="replaceable"><code>long_name</code></em>. Every option must have a long name. To resolve conflicts if multiple option groups contain the same long name, it is also possible to specify the option as --<em class="replaceable"><code>groupname</code></em>-<em class="replaceable"><code>long_name</code></em>.</td></tr><tr><td><span class="term"><a href="glib-Basic-Types.html#gchar">gchar</a> <em class="structfield"><code>short_name</code></em>;</span></td><td>If an option has a short name, it can be specified -<em class="replaceable"><code>short_name</code></em> in a commandline.</td></tr><tr><td><span class="term"><a href="glib-Basic-Types.html#gint">gint</a> <em class="structfield"><code>flags</code></em>;</span></td><td>Flags from <a href="glib-Commandline-option-parser.html#GOptionFlags"><span class="type">GOptionFlags</span></a>.</td></tr><tr><td><span class="term"><a href="glib-Commandline-option-parser.html#GOptionArg">GOptionArg</a> <em class="structfield"><code>arg</code></em>;</span></td><td>The type of the option, as a <a href="glib-Commandline-option-parser.html#GOptionArg"><span class="type">GOptionArg</span></a>.</td></tr><tr><td><span class="term"><a href="glib-Basic-Types.html#gpointer">gpointer</a> <em class="structfield"><code>arg_data</code></em>;</span></td><td> If the <em class="parameter"><code>arg</code></em> type is <code class="literal">G_OPTION_ARG_CALLBACK</code>, then <em class="parameter"><code>arg_data</code></em> must point to a <a href="glib-Commandline-option-parser.html#GOptionArgFunc"><span class="type">GOptionArgFunc</span></a> callback function, which will be called to handle the extra argument. Otherwise, <em class="parameter"><code>arg_data</code></em> is a pointer to a location to store the value, the required type of the location depends on the <em class="parameter"><code>arg</code></em> type: <div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><code class="literal">G_OPTION_ARG_NONE</code></span></td><td><p><code class="literal">gboolean</code></p></td></tr><tr><td><span class="term"><code class="literal">G_OPTION_ARG_STRING</code></span></td><td><p><code class="literal">gchar</code>*</p></td></tr><tr><td><span class="term"><code class="literal">G_OPTION_ARG_INT</code></span></td><td><p><code class="literal">gint</code></p></td></tr>
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -