我正在使用doxygen来评论我的C代码.我正在使用外部API(即不是我自己的),文档很少,所以我打算在我自己的源文件中记录一些API.我确实有外部API的头文件,但将我自己的注释添加到该文件是不切实际的.
外国标题
struct foreignstruct
{
int a;
int b;
};
Run Code Online (Sandbox Code Playgroud)
我的标题
/** My structure comments...
struct mystruct
{
/** Describe field here... */
int field;
};
/** @struct foreignstruct
* @brief This structure blah blah blah...
* @??? a Member 'a' contains...
* @??? b Member 'b' contains...
*/
Run Code Online (Sandbox Code Playgroud)
我在的地方用什么标签@???,以获得正确的doxygen输出(其中"正确"的方法产生输出,mystruct并且foreignstruct是相同的)?
我有一个lua函数,它接受多个参数并返回与参数一样多的值.每个返回值对应一个参数.为了说明,考虑一个从数据库中读取键/值对的值的函数:
val1, val2, val3 = my_function("key1", "key2", "key3");
val1 = my_function("key1");
Run Code Online (Sandbox Code Playgroud)
返回错误的最佳方法是什么my_function?(例如,如果提供的"密钥"无效)
我理解一种方法是在错误nil和错误字符串上返回两个值.这是最好的方法吗?例如:
val1, val2, val3 = my_function("key1", "key2", "key3");
if val1 then
-- Use val1, val2, and val3.
else
print("ERROR: " .. val2);
end
Run Code Online (Sandbox Code Playgroud)
编辑
一些额外的要点:
lua_pcall().my_function() 用C实现my_function()出现故障时,它也应该返回指示失败原因的错误代码(或消息).问题:我有两个并排拆分的缓冲区.我移动到左缓冲区中的一行,我想做一些将右缓冲区中的点移动到相同行号的操作.例如,如果我在左侧缓冲区中的第26行,我运行某种类型的宏,并且我在右侧缓冲区的第26行.
我尝试过的东西没有像我喜欢的那样(或根本没有):
scroll-all-mode.如果缓冲区开始同步(例如,两个缓冲区中的点在同一行号上)并且如果我坚持基本线移动,则它可以工作.但如果我isearch-forward-regexp或页面向上/向下翻页,它很快就会失去同步.如果有一个可以"重新同步"的命令,那么这就解决了我的问题.goto-line.保存和恢复位置始终返回到同一缓冲区.