问题列表 - 第8067页

C中的宏生成宏?

我想让C预处理器为我生成宏(即,我只使用C99).我写了一个宏

#define make_macro(in) <...magic here...>
Run Code Online (Sandbox Code Playgroud)

当我放

make_macro(name1)
make_macro(name2)
Run Code Online (Sandbox Code Playgroud)

稍后在代码中,它将扩展为

#define name1(...) name1_fn(name1_info, __VA_ARGS__)
#define name2(...) name2_fn(name2_info, __VA_ARGS__)
Run Code Online (Sandbox Code Playgroud)

然后我就可以使用name1和name2作为(宏实现的)函数.我认为我在两个步骤中都使用了宏:使用宏来重复填充模板是有意义的,并且除了通过宏之外,可变参数处理将不起作用.

那么什么进入<......魔法......>占位符来做到这一点?在这一点上,我开始相信它在C99中是不可能的,但也许我错过了语法的一些细节.

c macros variadic-functions c-preprocessor

7
推荐指数
2
解决办法
4792
查看次数

怎么了?得到()

让我们考虑这两行:

char input[1];
gets(input);
Run Code Online (Sandbox Code Playgroud)

假设输入是"测试".printf("%s \n",输入)=>"test"但是如果我使用调试器,我看到输入[0] ='t'没有输入[1] ......究竟发生了什么?

c

2
推荐指数
2
解决办法
224
查看次数

彼此在一年内的两个日期

我有两个约会,我如何检查两个日期是否超过一年?

简短的问题!:-)

c# asp.net datetime

3
推荐指数
1
解决办法
1861
查看次数

如何使用Linq对每N行进行分组

我无法找到一种方法来完成这项工作,并希望有人有一个想法.一个简化的例子是有一个整数列表1-100,我想分组每3行所以结果将是1,2,3在第一组然后4,5,6在下一组等我知道如何获取每个第n条记录,但我需要的是所有记录,以便我可以使用first,last,sum,max等聚合它们.

谢谢!

c# linq group-by

18
推荐指数
2
解决办法
1万
查看次数

SQLAlchemy令人费解?

这看起来似乎很有争议,但我刚刚通过了SQLAlchemy的ORM教程,最后得到了以下代码:

from sqlalchemy import create_engine
from sqlalchemy import Table, Column, Integer, String, MetaData, ForeignKey
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker

engine = create_engine('sqlite:///:memory:', echo=True)

metadata = MetaData()
users_table = Table('users', metadata,
    Column('id', Integer, primary_key=True),
    Column('name', String),
    Column('fullname', String),
    Column('password', String)
)

metadata.create_all(engine)

Base = declarative_base()
class User(Base):
    __tablename__ = 'users'

    id = Column(Integer, primary_key=True)
    name = Column(String)
    fullname = Column(String)
    password = Column(String)

    def __init__(self, name, fullname, password):
        self.name = name
        self.fullname = fullname
        self.password = …
Run Code Online (Sandbox Code Playgroud)

python orm sqlalchemy

33
推荐指数
2
解决办法
1万
查看次数

私有,公共和受保护继承之间的区别

是什么区别public,private以及protected用C++继承?我在SO上发现的所有问题都涉及具体案例.

c++ inheritance encapsulation c++-faq access-specifier

952
推荐指数
14
解决办法
65万
查看次数

COM和.NET有什么区别?

重复

net组件和com组件之间有什么区别

COM和.NET之间的确切区别是什么?.NET是一个简单的COM外壳还是完全不同的东西?

.net com

5
推荐指数
2
解决办法
2116
查看次数

Emacs函数在Python模式下为__all__添加符号?

是否存在现有的Emacs函数,__all__在编辑Python代码时添加当前符号的符号?

例如,假设光标是第一个ofoo:

#    v---- cursor is on that 'o'
def foo():
    return 42
Run Code Online (Sandbox Code Playgroud)

如果你做的Mx蟒蛇加至所有(或其他),将添加'foo'__all__.

当我用Google搜索时,我没有看到一个,但是,一如既往,也许我错过了一些明显的东西.

更新

我尝试了Trey Jackson的答案(谢谢,Trey!)并进行了一些修复/增强,以防任何人感兴趣(不再双重插入,__all__如果它还不存在则放入更典型的位置):

(defun python-add-to-all ()
  "Take the symbol under the point and add it to the __all__
list, if it's not already there."
  (interactive)
  (save-excursion
    (let ((thing (thing-at-point 'symbol)))
      (if (progn (goto-char (point-min))
                 (let (found)
                   (while (and (not found)
                               (re-search-forward (rx symbol-start "__all__" symbol-end
                                                      (0+ space) "=" (0+ …

python emacs

5
推荐指数
1
解决办法
331
查看次数

非静态字段,方法或属性需要对象引用吗?

我知道这可能是一个非常新的问题,所以我道歉.

我试图从另一种形式MaxScore访问Form1上的标签的Text属性.

当我单击MaxScore上的Ok按钮时,我想通过使用max.ToString()将Form1的myGameCountLbl.Text设置为Form1的变量max.

这是我在MaxScore的OK按钮事件中的代码:

private void okBtn_Click(object sender, EventArgs e)
{
    Form1.myGameCountLbl.Text = Form1.max.ToString();
    Form1.compGameCountLbl.Text = Form1.max.ToString();
}
Run Code Online (Sandbox Code Playgroud)

但是当我去编译它时,我得到错误:

非静态字段,方法或属性"Towergame_2.Form1.myGameCountLbl"需要对象引用

我得到了Towergame_2.Form1.max和Towergame_2.Form1.compGameCountLbl的相同错误.

不太确定如何解决这个问题.Max是一个公共变量,两个标签也是公共变量.

谢谢!

这是我的构造函数中的代码(谢谢lassevk的代码!):

public Form1()
{
    //initialize vars
    myHp = 100;
    compHp = 100;
    youWon = 0;
    compWon = 0;
    money = 100;
    canCompAttack = true;
    gameOver = false;

    //show HowToPlay Dialogue
    HowToPlay howToPlay = new HowToPlay();
    howToPlay.ShowDialog();

    using (MaxScore maxScore = new MaxScore())
    {
        maxScore.MainForm = this;
        maxScore.ShowDialog();
    }

    InitializeComponent();
}
Run Code Online (Sandbox Code Playgroud)

c# properties reference object

5
推荐指数
1
解决办法
2万
查看次数

在Oracle SQL语句中使用分号

免责声明:我刚开始研究新合同,这迫使我从MSSQL切换到Oracle.所以我是Oracle的全新人,可能会给我带来许多糟糕的MSSQL实践.好的,关于这个问题......

根据这个帖子的答案,分号是坏的,应该避免.我花了好几个小时试图弄清楚为什么我的查询在SQL Developer中运行得非常慢,我意识到了这一点.从复杂查询结束时删除分号后,它在几秒钟内完成(与我在几分钟后放弃它相比,在删除分号之前就是这种情况).这种行为让我吃了一惊,谷歌搜索没有多少关于我应该或不应该在我的SQL语句中使用分号的时间和原因.任何人都可以通过简短的解释清楚这一点吗?

如果您有可用于从MSSQL迁移到Oracle的穷人开发人员的在线资源的链接,那么我将非常感激!

谢谢!

sql oracle performance

3
推荐指数
2
解决办法
7400
查看次数