小编msi*_*yer的帖子

选择InstallShield项目类型

我即将开始一个新的InstallShield项目.项目类型有三种选择:

  1. 基本MSI
  2. 安装InstallScript
  3. 安装InstallScript - 微星

每个的优点和缺点是什么?我应该选择哪一个?

installshield

12
推荐指数
1
解决办法
4571
查看次数

关于C#中的原始数据类型

这篇MSDN文章涉及数据类型.

它说:

对于Java中的每个原始数据类型,核心类库提供了一个包装类,将其表示为Java对象.例如,Int32类包装int数据类型,Double类包装double数据类型.

另一方面,C#中的所有原始数据类型都是System命名空间中的对象.对于每种数据类型,都提供了短名称或别名.例如,int是System.Int32的短名称,double是System.Double的缩写形式.

我跑到Mono代码来读取System.Int32结构的实现.

我发现了几行强迫我提出这个问题:

public const int MaxValue = 0x7fffffff;
public const int MinValue = -2147483648;

// This field is looked up by name in the runtime
internal int m_value;
Run Code Online (Sandbox Code Playgroud)

我假设MS将以相同的方式实现结构.这与包装器有什么不同吗?文件试图传达的究竟是什么?

如果MSDN被认为是System.Int32结构将无限递归,至少对我来说非常困惑.

c#

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

功能指针

我正在阅读Don Clugston关于Codeproject 的文章.这是一篇很棒的文章,很有名.在下面的代码片段中,我发现了一个非常难以理解的特定概念:

class A {
 public:
       virtual int Afunc() { return 2; };
};

class B {
 public: 
      int Bfunc() { return 3; };
};

// C is a single inheritance class, derives only from A
class C: public A {
 public: 
     int Cfunc() { return 4; };
};

// D uses multiple inheritance
class D: public A, public B {
 public: 
    int Dfunc() { return 5; };
};
Run Code Online (Sandbox Code Playgroud)

该片段后跟以下段落:

假设我们为类C创建一个成员函数指针.在这个例子中,Afunc和Cfunc都是C的成员函数,所以允许我们的成员函数指针指向Afunc或Cfunc.但是Afunc需要一个指向C :: A(我称之为Athis)的指针,而Cfunc需要一个指向C的指针(我称之为Cthis).编译器编写者通过一个技巧处理这种情况:他们确保A物理存储在C的开头.这意味着Athis == Cthis.我们只有一个值得担心,而且全世界都很好. …

c++ function-pointers

6
推荐指数
1
解决办法
213
查看次数

关于继承C#

我试图了解继承如何在C#中工作.我写了以下代码:

class Program
{
    static void Main(string[] args)
    {
        Animal animal = new Dog();
        animal.OverRideMe();
        //animal.NewMethod();
        Dog dog = (Dog)animal;
        dog.OverRideMe();
        dog.NewMethod();
        Console.Read();
    }
}
public abstract class Animal
{
    public Animal()
    {
        Console.WriteLine("Base Constructor");
    }
    public virtual void OverRideMe()
    {
        Console.WriteLine("In Base Class's OverRideMe");
        Console.Read();
    }
}
public class Dog : Animal
{
    public Dog()
    {
        Console.WriteLine("Derived Constructor");
    }
    public override void OverRideMe()
    {
        Console.WriteLine("In Derived Class's OverRideMe");
        Console.Read();
    }
    public void NewMethod()
    {
        Console.WriteLine("In Derived Class's NewMethod");
        Console.Read(); …
Run Code Online (Sandbox Code Playgroud)

c# inheritance

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

以编程方式分离数据库

我有一个数据库"D:\ MDF CONNECTION SAMPLE\BIN\DEBUG\HARMDATABASE.MDF".我试图使用以下代码分离或重命名它:

SqlConnection conn = new SqlConnection("Data Source=.\\MSSQLSERVER2008;database=Master;Integrated Security=True;");
SqlCommand cmd = new SqlCommand("", conn);
cmd.CommandText = @"sys.sp_detach_db D:\MDF CONNECTION SAMPLE\BIN\DEBUG\HARMDATABASE.MDF";
conn.Open(); 
cmd.ExecuteNonQuery();
cmd.Dispose();
conn.Dispose();
Run Code Online (Sandbox Code Playgroud)

但是得到一个错误:

'\'附近的语法不正确.

c# t-sql sql-server ado.net

4
推荐指数
3
解决办法
5266
查看次数

如何将各种数据类型的变量存储在C++(本机)二进制文件中?

一周前我开始使用C++进行冒险.我已经阅读了很多关于C++的内容.我正在试验以下内容:

 char * String1 = "abcdefgh";
Run Code Online (Sandbox Code Playgroud)

然后,我尝试以下列方式修改其值:

 String1[2] = 'f';
Run Code Online (Sandbox Code Playgroud)

这导致了UNHANDLED EXCEPTION.但以下结果是正确执行:

 char String2[9]="abcdefgh";

 String2[7]='s';
Run Code Online (Sandbox Code Playgroud)

我尝试使用DUMPBIN提取有关使用上述代码生成的二进制文件的信息.DUMPBIN是一个Visual Studio工具.我使用/ ALL选项提取二进制文件中包含的每个信息.

我可以在RAWDATA部分看到两个"abcdefgh"实例.我理解为什么.

我的问题如下:

1)虽然String1和String2都是指向同一字符序列的两个不同实例的指针,但为什么String1操作不合法呢?

2)我知道编译器生成一个SYMBOL TABLE来映射变量名及其值.有没有可以在Windows操作系统中可视化SYMBOL TABLE的工具?

3)如果我有一个整数数组而不是字符序列,可以在RAWDATA中找到吗?

我还可以在RAWDATA中看到以下内容:

Unknown Runtime Check Error.........
 Stack memory around _alloca was corrupted.......
  ....A local variable was used before it was initialized.........
 ....Stack memory was corrupted..
  ........A cast to a smaller data type has caused a loss of data.
  If this was intentional, you should mask the source of the cast with the appropriate bitmask. …
Run Code Online (Sandbox Code Playgroud)

c++

0
推荐指数
1
解决办法
785
查看次数