小编Ada*_*lor的帖子

我们可以在c#中定义枚举的隐式转换吗?

是否可以在c#中定义枚举的隐式转换?

可以实现这一目标的东西?

public enum MyEnum
{
    one = 1, two = 2
}

MyEnum number = MyEnum.one;
long i = number;
Run Code Online (Sandbox Code Playgroud)

如果没有,为什么不呢?

为了进一步讨论和提出这个想法,我跟进了我目前处理这个问题的方法:改进C#enum

c# enums implicit implicit-conversion

125
推荐指数
7
解决办法
6万
查看次数

C++命名空间建议

我只是在教自己C++命名空间(来自C#背景),我真的开始认为,即使C++比大多数其他语言做得更好,嵌套命名空间也不是其中之一!

我是否正确地认为,为了声明一些嵌套的命名空间,我必须执行以下操作:

namespace tier1
{
    namespace tier2
    {
        namespace tier3
        {
            /* then start your normal code nesting */
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

相反:

namespace tier1::tier2::tier3
{
}
Run Code Online (Sandbox Code Playgroud)

àlaC#?

当我需要转发声明时,这变得更加疯狂:

namespace tier1
{
    namespace tier2
    {
        namespace forward_declared_namespace
        {
            myType myVar; // forward declare
        }
        namespace tier3
        {
            /* then start your normal code nesting */
            class myClass
            {
                forward_declared_namespace::myType myMember;
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

请记住,我开发的典型系统包括:

MyCompany::MySolution::MyProject::System::[PossibleSections]::Type
Run Code Online (Sandbox Code Playgroud)

这就是为什么你不倾向于在C++示例中看到很多名称空间的使用?或者通常只有单个(非嵌套)命名空间?

UPDATE

对于任何有兴趣的人,这就是我最终解决这个问题的方法.

c++ namespaces

72
推荐指数
5
解决办法
4万
查看次数

在C++中定义的WIN32和_WIN32有什么区别

我知道这WIN32显然是表示win32编译但是需要_WIN32什么?

c++ c-preprocessor

69
推荐指数
4
解决办法
5万
查看次数

System.Reflection.Assembly.LoadFile锁定文件

我正在加载一个DLLvia System.Reflection.Assembly.LoadFile并在一个插件式系统中反映它的成员.我需要能够DLL在系统运行时更新/覆盖这些,但看起来在调用System.Reflection.Assembly.LoadFile文件后随后被锁定.
有谁知道解锁文件的方法?
我已阅读有关在单独的应用程序域中加载文件的信息?这种方法有什么缺陷吗?

asp.net reflection plugins

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

你能简化这个算法吗?

一个是数学家.这已经遍布办公室,我们希望看到谁可以提出更好的优化版本.

(((a+p) <= b) && (a == 0 || a > 1) && (b >= p)) && 
    ((b - (a + p) == 0) || (b - (a + p) > 1))
Run Code Online (Sandbox Code Playgroud)

编辑:所有数据都是正整数

编辑:更好==为简单而重构

algorithm refactoring

25
推荐指数
3
解决办法
3190
查看次数

警告C4099:使用'struct'时首次看到使用'class'的类型名称(MS VS 2k8)

这个警告有什么值得担心的吗?我读过它可能导致不稳定的行为?

这是我正在尝试编译的一个例子,有人可以向我解释为什么作者将对象声明为一个类但是然后将typedef表示为一个结构?如果课程是POD,这样做是否完全正常?

谢谢.

c++ compiler-warnings

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

你可以将#define扩展为字符串文字吗?

有没有办法让C++预处理器将#define'ed值扩展为字符串文字?
例如:

#define NEW_LINE '\n'
Printf("OutputNEW_LINE"); //or whatever
Run Code Online (Sandbox Code Playgroud)

这对我来说在编译之前它应该是可能的吗?
或者是否有更好的设计模式来实现这种行为(不需要像sprintf那样使用运行时修复)?

编辑我明白#define可能是邪恶的,但为了论证缘故...

其他有没有人批评这种方法?

c++ c-preprocessor

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

.lib文件未创建(VS2008)

我在我的解决方案中添加了一个dll项目,并通过可执行项目显式引用它.可执行文件抱怨它无法找到lib.

有任何想法如何设置项目来创建所需的lib文件?并且为什么项目不会创建一个?!?

干杯

注意 我已搜索项目,并且文件未在任何地方创建.

visual-studio-2008

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

有没有工具来帮助复杂的'if'逻辑?

我的一个个人编程恶魔一直是复杂的逻辑,需要由if语句(或类似的)控制.并不总是那么复杂,有时只需要考虑几个状态.

是否有开发人员可以在设计期间执行的任何工具或步骤来帮助查看"状态"并采取措施重构代码以简化生成的代码?我正在考虑制作一个矩阵或类似的东西......?

logic

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

有人可以解释char的签名是如何特定于平台的吗?

我最近读到了之间的区别

char
unsigned char
Run Code Online (Sandbox Code Playgroud)

signed char
Run Code Online (Sandbox Code Playgroud)

是特定于平台的.
我不能完全理解这个问题?这是否意味着位序列可以从一个平台到另一个平台变化,即平台1,标志是第一位,平台2标志可能在末尾?你会怎么对这个代码?

基本上我的问题来自于看到这一行:

typedef unsigned char byte;
Run Code Online (Sandbox Code Playgroud)

我不明白标牌的相关性?

c++ signedness

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